我是一个有用的助手,可以为您翻译文本。
我是一名Aurelia的新手。我已经成功地在ASP.NET MVC应用程序中启动了Aurelia,现在我想使用ASP.NET MVC动作获取Aurelia元素视图。我看到一些示例使用useView、getViewStrategy或ViewLocator,但即使这些示例提到了ASP.NET MVC或Razor,它们似乎都使用静态HTML。
我的发现: useView
该方法仅适用于应用程序根目录(从未对元素调用)。然而,将其与应用程序根目录和ASP.NET MVC操作一起使用会引发与使用useView相同的错误,这表明仅支持静态HTML。 ViewLocator
与useView有相同的错误。
在这里我找到了一个问题,提问者声称已经根据Aurelia文档中的内容http://aurelia.io/hub.html#/doc/article/aurelia/framework/latest/app-configuration-and-startup/9创建了一个基于工作的解决方案,但是文档没有提到任何关于服务器端视图的内容。
我错过了什么还是Aurelia不支持服务器端视图?
我是一名Aurelia的新手。我已经成功地在ASP.NET MVC应用程序中启动了Aurelia,现在我想使用ASP.NET MVC动作获取Aurelia元素视图。我看到一些示例使用useView、getViewStrategy或ViewLocator,但即使这些示例提到了ASP.NET MVC或Razor,它们似乎都使用静态HTML。
我的发现: useView
@useView('/Issue/EditIssueHtml')
export class EditIssue {
很明显,useView仅支持静态HTML:Unhandled rejection Error: Load timeout for modules: template-registry-entry!/Issue/EditIssueHtml,text!/Issue/EditIssueHtml
getViewStrategy
export class EditIssue {
getViewStrategy() {
return '/Issue/EditIssueHtml';
}
}
该方法仅适用于应用程序根目录(从未对元素调用)。然而,将其与应用程序根目录和ASP.NET MVC操作一起使用会引发与使用useView相同的错误,这表明仅支持静态HTML。 ViewLocator
ViewLocator.prototype.convertOriginToViewUrl = (origin: Origin) => {
var moduleId: string = origin.moduleId;
var name = moduleId.split('/')[moduleId.split('/').length - 1].replace('ViewModel', 'View').replace('.js', '').replace('.ts', '');
console.log('ViewLocator: ' + name);
if (name !== 'edit-issue') {
return `${name}.html`;
}
return "/Issue/EditIssueHtml";
}
与useView有相同的错误。
在这里我找到了一个问题,提问者声称已经根据Aurelia文档中的内容http://aurelia.io/hub.html#/doc/article/aurelia/framework/latest/app-configuration-and-startup/9创建了一个基于工作的解决方案,但是文档没有提到任何关于服务器端视图的内容。
我错过了什么还是Aurelia不支持服务器端视图?