在我的应用程序中,用户设置了 6 个单独的数字。他们可以删除/重新输入/输入输入中的值。控制器将此值发送到路由器。
当路由器查看所有这些属性时,它会将用户带到下一页。我的问题是如何观察属性(指定的属性)并做出相应的反应?
这是我的路由器代码(片段):
export default Ember.Route.extend({
otp1:null,
otp2:null,
otp3:null,
otp4:null,
otp5:null,
otp6:null,
myWatcher(){
console.log('all properties are available, enable next');
},
setupController(controller,model) {
this._super(...arguments);
this.controllerFor('auth-page.credit-card.credit-cardno').set('enableNext', false);
},
actions:{
setupCardNumber( number, index ){
this.set('opt'+index, number ); //setting values
console.log( 'setting', this.get('opt'+index) );//gets property
}
}
}
据我了解您的代码,您可以简单地创建一个if-statement
:
setupCardNumber( number, index ){
if (this.get('otp1') &&
this.get('otp2') &&
this.get('otp3') &&
this.get('otp4') &&
this.get('otp5') &&
this.get('otp6') ) {
this.transitionTo('next-page');
}
}
我建议您创建地图或其他东西,您的代码往往会很快变得无法维护。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句