假设我有一个路径文件,如:
import Ember from 'ember';
export default Ember.Route.extend({
[...]
password: "...",
[...]
});
如何在模板中使用密码属性?
如果我使用{{password}}
它不起作用,但是,如果我定义一个带有密码属性的控制器,我可以在模板中使用{{password}}
,但考虑到不再使用控制器的事实,我有什么选择?
我知道我可以在路线上做这样的事情:
import Ember from 'ember';
export default Ember.Route.extend({
model(){
return {
password: "...",
}
},
});
然后访问{{model.password}}
,但我不认为这是去这里的方式。
答案 0 :(得分:2)
路由设置控制器及其路由职责,将数据传递给控制器,
如上所示,您可以使用model
挂钩将数据传递给控制器
与setupController挂钩如:
setupController(model, controller) {
this._super(...arguments);
var pass = this.get('password');
controller.set('password', pass);
}
还有其他方法,比如从控制器访问路由,但这将是一个黑客