我有离子2的错误。
上下文:
我使用ionic start myProject --v2
创建一个空项目。
我在about.ts中导入了我的实体{User},并在代码中创建了一个新的User()。
但是用户使用装饰者" @myDeco。"
编译发送没有错误,但离子确实:
无法解析'Parser'(?)
的所有参数。确保所有参数都使用Inject进行修饰或具有有效的类型注释以及' Parser'用Injectable装饰。
或
意外的价值'主页'由模块' AppModule'
声明如果我对@myDeco发表评论,它的效果会很好。 (当然我已经用npm install安装了reflect-metadata)
树:
src/bdd/entity/User.ts
src/bdd/reflect/myreflect.ts
src/pages/about/about.ts
代码:
myreflect.ts
import 'reflect-metadata';
export function myDeco(target: any, key: string) : void{
var t = Reflect.getMetadata("design:type", target, key);
console.log(`${key} type: ${t.name}`);
}
User.ts
import {myDeco} from '../reflexif/myreflect'
export class User {
@myDeco
private login: string;
public setlogin(login: string) {this.login=login;}
}
About.ts
import {Component} from '@angular/core';
import {NavController} from 'ionic-angular';
import {User} from '../../bdd/entity/User'
@Component({
selector: 'page-about',
templateUrl: 'about.html'
})
export class AboutPage {
constructor(public navCtrl: NavController) {
let u = new User();
u.setLogin('grgr');
}
}
谢谢!
迈克尔。