Ember.js 余烬组件中的属性未传播到其父控制器

Ember.js 余烬组件中的属性未传播到其父控制器,ember.js,Ember.js,我有一个组件优先级选择器,看起来像这样 导出默认Ember.Component.extend({ 优先级:“低”, didInsertElement:函数(){ 这是.$('[data toggle=“tooltip”]')。tooltip(); }, 行动:{ 单击:功能(优先级){ 此。设置('优先级',优先级); 这个.$('.btn-primary').removeClass('btn-primary'); 这是.$('.btn代表-'+优先级).addClass('btn-primar

我有一个组件
优先级选择器
,看起来像这样

导出默认Ember.Component.extend({
优先级:“低”,
didInsertElement:函数(){
这是.$('[data toggle=“tooltip”]')。tooltip();
},
行动:{
单击:功能(优先级){
此。设置('优先级',优先级);
这个.$('.btn-primary').removeClass('btn-primary');
这是.$('.btn代表-'+优先级).addClass('btn-primary');
}
}
});
模板代码


低
中等
高
我在模板中使用这个组件,就像这样


{{priority selector priority=priority_gender}
我在控制器中指定了它

导出默认Ember.Controller.extend({
...
优先权(性别):"低"
...
})
但是当我与组件交互时,控制器中的属性从未改变,我可以通过查看ember inspector观察到这种情况。


所以,请确保在您使用的模板的右侧控制器中指定
priority\u gender

是否单击处理程序工作(通过在此处设置断点进行检查)?能否将优先级属性值更改为不等于组件默认值的值?然后你们看到了什么?我添加了一个断点,它到达了那个代码,所以点击处理程序正在工作。当我更改组件中的默认值时,它仍然使用控制器中设置的值。单击处理程序在测试中接收到什么参数?该参数是优先级,因此“低”、“中”或“高”取决于用户单击的键。请提供组件的模板代码好吗?在挖掘
Ember之前,您还可以进行另一项检查。设置
方法:在Ember Inspector中更改控制器中的
priority\u-gender
值,并检查它是否影响组件的
priority
属性。