我有一个案例,我想为一组不同的视图模型使用特定的模板文件,例如 template-file.html。
为了确定要与视图一起加载的视图模型,我使用了 JSON 配置文件。
我有以下示例:main-page.ts:
export interface Model {
model: string;
x: number;
y: number;
}
export class MainPage
{
configuration: Model[];
constructor()
{
this.configuration = [
{
model: 'simple-view',
x: 800,
y: 200
},
{
model: 'advanced-view',
x: -200,
y: 0
},
{
model: 'simple-view',
x: -1000,
y: -400
}
];
}
}
使用以下模板:
<template>
<require from="./modules/simple-view"></require>
<require from="./modules/advanced-view"></require>
<svg>
<g class="models">
<compose repeat.for="config of configuration"
view="./modules/template.html"
view-model="./modules/${config.model}"
model.bind="config"
containerless>
</compose>
</g>
</svg>
</template>
现在我想在这里实现的是,基于配置中的模型属性加载不同的打字稿类,但始终使用相同的 HTML 模板文件。但是,现在它给我的错误是它找不到相应的视图。
在线搜索只给了我可以仅使用视图进行组合的用例,但我还没有找到允许您为不同视图模型指定单个模板 html 文件的示例或解决方案。
这甚至可能吗?如果是这样,compose 元素是否适合这项工作?
任何帮助深表感谢。
问候, Jan Jaap