我正在查看以前的EmberJS v2.16项目中的一些遗留代码,负责人不在身边,所以我希望在这里提供一些建议。
export default Component.extend({
// ...
actions: {
update(value) {
this.get('update')(value);
},
// ...
});
我不确定需要多少代码,但请告诉我它是否过于抽象,我会尝试提供更多背景信息。
this.get('update')
是否引用了update(value)
功能?在什么情况下有人必须这样做?
答案 0 :(得分:3)
您的开发人员可能希望在您的组件之外执行操作。在模板中调用组件时,我猜测它看起来像这样。
{{awesome-component update=(action 'outer-update-action')}}
然后在你的组件中this.get('update')
将获得传入的函数,以便您可以使用您的值调用它。
在" Triggering Changes with Actions"
下的组件页面上的Ember指南中对此进行了描述。