首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用模板而不是组合

如何使用模板而不是组合
EN

Stack Overflow用户
提问于 2016-09-25 21:57:11
回答 1查看 123关注 0票数 0

我有一个基于Aurelia绑定的TreeView,它工作得很好。

有一个名为TreeView的组件,其中包含通常的视图和视图模型。

然后我有了另一个视图TreeViewNode.html,TreeView递归地使用它。

代码语言:javascript
复制
    <template>
    <div content-id="treeview-root">
        <compose view="./tree-view-node.html"></compose>
        <compose repeat.for="item of root.items"  view="./tree-view-node.html"></compose>
    </div>
</template>

这一切都行得通。但是,我希望将视图模型转换为自定义元素,而不只是使用继承父视图模型的compose

将其转换为自定义元素的问题是它丢失了TreeView视图模型,该视图模型包含处理事件的所有方法,如拖放和项目选择。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-26 00:22:13

您可以使用bindables传入自定义元素所需的视图模型部分。

tree-view-node.html:

代码语言:javascript
复制
<template bindable="viewModelParts">
    <div click.trigger="viewModelParts.itemSelected()">Click here</div>
</template>

consumer.html:

代码语言:javascript
复制
<template>
    <require "./tree-view-node.html></require>
    <div content-id="tree view-root">
        <tree-view-node repeat.for="item of root.items" view-model-parts.one-time="theViewModelParts"></tree-view-node>
    </div>
</template>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39687631

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档