在 Angular 中,如果我们想从外部为自定义组件绑定属性,我们必须使用“@Input”来允许从外部设置该属性(即从使用组件模板)EmberJS 是否也有某种类似的机制,或者它是否允许直接从模板 (hbs) 绑定而不在组件 JS 中添加/标记任何内容?Ember Octane V/s 早期版本的 Ember 有什么不同吗?
2 回答
![?](http://img1.sycdn.imooc.com/545850ee0001798a02200220-100-100.jpg)
紫衣仙女
TA贡献1839条经验 获得超15个赞
不,您不一定必须添加输入标签,但您必须在尝试将属性传递到的组件内声明属性。
{{#each model as |post|}}
{{blog-post title=post.title body=post.body}}
{{/each}}
blog-post 组件,定义一个名为 title 的属性,这应该可以工作。
![?](http://img1.sycdn.imooc.com/5333a0780001a6e702200220-100-100.jpg)
蝴蝶不菲
TA贡献1810条经验 获得超4个赞
是的,它允许从组件外部进行绑定,而无需向组件 js 添加任何内容
在组件 hbs 文件中
<p>{{@attribute}}</p>
从外面
<MyComponent @attribute="attributeValue"/>
您也可以从组件 js 中获取绑定属性
@tracked mycomponentAttribute = this.args.attribute;
在组件 hbs 文件中
<p>{{this.mycomponentAttribute}}</p>
添加回答
举报
0/150
提交
取消