我是一个奥雷利亚初学者,我试图准备一个简单的应用程序与登录页面。但是,当我给出验证,我不能setRoot的登录。由于构造函数不允许两个arguments.con,如果有其他方法,请帮助我?在下面找到login.js的代码。
import {inject,Aurelia} from 'aurelia-framework';
import {Validation} from 'aurelia-validation';
import {ensure} from 'aurelia-validation';
@inject(Aurelia)
export class Login{
static inject() { return [Validation]; }
heading='Login to Aurelia'
constructor(Aurelia,validation)
{
this.aurelia=Aurelia;
this.email='raja';
this.password='12345';
this.validation = validation.on(this)
.ensure('email')
.isNotEmpty()
.hasMinLength(3)
.hasMaxLength(10)
.ensure('password')
.isNotEmpty()
.hasMinLength(3)
.hasMaxLength(10) ;
}
Submit()
{
this.validation.validate()
.then( () => {
if(this.email=='raja'&&this.password=='12345')
{
this.aurelia.setRoot();
}
else
{
alert(`Invalid Credentials`);
}
});
}
}发布于 2015-12-21 12:26:08
不要把@inject和static inject...混在一起。
改变这一点:
import {inject,Aurelia} from 'aurelia-framework';
import {Validation} from 'aurelia-validation';
import {ensure} from 'aurelia-validation';
@inject(Aurelia)
export class Login{
static inject() { return [Validation]; }
heading='Login to Aurelia'
constructor(Aurelia,validation)
{
...
}
...
}对此:
import {inject,Aurelia} from 'aurelia-framework';
import {Validation} from 'aurelia-validation';
import {ensure} from 'aurelia-validation';
@inject(Aurelia, Validation)
export class Login{
heading='Login to Aurelia'
constructor(aurelia, validation) {
...
}
...
}https://stackoverflow.com/questions/34392584
复制相似问题