1
ember jsアプリケーションでember-cp-validationを使用して検証しています。コンポーネントページでvalidate()メソッドを使用します。私はエラーが発生しています(検証は関数ではありません)。私は私が使用している私のコンポーネントでモデルのページ(profile.js)では、このlinkvalidate()はember-cp-validationの機能ではありません
、
import DS from 'ember-data';
import { validator, buildValidations } from 'ember-cp-validations';
const Validations = buildValidations({
name: validator('presence', true),
address:[
validator('presence', true),
validator('length', { max: 300}),
],
pincode: validator('presence', true),
email:[
validator('presence', true),
validator('format', {type:'email'})
]
});
export default DS.Model.extend(Validations,{
name: DS.attr('string'),
address: DS.attr('string'),
pincode: DS.attr('number'),
email: DS.attr('string')
});
そしてコンポーネントページ、
import Ember from 'ember';
export default Ember.Component.extend({
actions: {
authenticate() {
let profile = this.get('profile');
profile.validate().then(({ validations }) => {
if(validations.get('isValid')){
this.transitionToRoute("welcome");
}
});
}
}
});
あなたは 'コンポーネントのprofile'属性が実際にあなたが検証を定義した' model'のインスタンスであることを確認していますか? – alptugd
'profile'はmodels filenameです。 – Arunprasath