首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >奥雷利亚作曲

奥雷利亚作曲
EN

Stack Overflow用户
提问于 2017-01-27 12:46:29
回答 1查看 2.3K关注 0票数 2

关于Aurelia的<compose>元素的快速问题。我曾希望使用它将自定义元素作为窗体控件插入,如下所示:

代码语言:javascript
复制
<!-- Loop through form controls -->
<div class="form-group" repeat.for="control of controls">
  <label><span t="${control.label}"></span></label>
  <compose view-model="resources/elements/${control.type}/${control.type}" 
    value.bind="control.value" data.bind="control.data" placeholder.bind="control.placeholder"></compose>
</div>

但是,<compose>元素开始被限制为只接受modelview-modelview参数。对吗?基于valuedataplaceholder等参数传递给自定义元素的最佳方法是什么?

用我的解决方案编辑

最后,看起来奥雷利亚的<compose>只适用于viewview-modelmodel属性。我的解决方案是传递所有数据(可以是作为单个对象传递的多个项),如下所示:

代码语言:javascript
复制
<compose view-model="resources/elements/${control.type}/${control.type}" 
         model.bind="{'control': control, 'model': model, 'readonly': readonly}">
</compose>

我发现有趣的是,当您使用model.bind时,您不需要使用@bindable装饰器来接收参数。他们马上就可以看到了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-27 14:54:59

使用model.bind怎么样?

代码语言:javascript
复制
<!-- Loop through form controls -->
<div class="form-group" repeat.for="control of controls">
  <label><span t="${control.label}"></span></label>
  <compose view-model="resources/elements/${control.type}/${control.type}"
    model.bind="control"></compose>
</div>

然后,视图模型将可以从其value属性访问dataplaceholder .

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41894323

复制
相关文章

相似问题

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