在把手输入助手上绑定属性,如maxlength

时间:2014-04-13 16:37:02

标签: ember.js handlebars.js

我的字段限制在服务器端和客户端都是重复的,我不喜欢它..

现在我有类似的东西:

{{input type="text" value=firstname maxlength=50}}

服务器端我生成js以使我的域类约束可用于客户端,结果将是例如:

var CONSTRAINTS = {
   "person.firstname.maxlength" : 50,
   "person.lastname.maxlength" : 70
};

绑定这些值的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

您可以尝试在App.PersonController中执行此操作:

App.PersonController = Ember.ObjectController.extend({
  firstNameLength:CONSTRAINTS['person.firstname.maxlength'],
  lastNameLength:CONSTRAINTS['person.lastname.maxlength']
});

然后在你的模板中它就是:

{{input type="text" value=firstname maxlength=firstNameLength}}

答案 1 :(得分:0)

我最终改变了我生成的约束:

var CONSTRAINTS = {
    Person: {
        firstName: {
            maxlength: 50
        },
        lastName: {
            maxlength: 70
        },            
    }
};

直接在我的模板中使用它:

{{input type="text" value=firstname maxlength=CONSTRAINTS.Person.firstName.maxlength}}