Leu*_*noe 2 gulp tslint angular
我是 AngularJS 2 的新手,这是我第一次尝试用 TSlint 编译它。我做了Tour of Heroes教程,有一个像下面这样的部分,TSlint不想编译说object access via string literals is disallowed.
ngOnInit(): void {
this.route.params.forEach((params: Params) => {
let id = +params['id'];
this.projectService.getProject(id)
.then(project => this.project = project);
});
}
Run Code Online (Sandbox Code Playgroud)
我不确定我是否理解这个问题,如果要解决它,我会迷失方向。请问你能帮帮我吗?
我的其他代码
getProjects(): Promise<Project[]> {
return this.http.get(`${this.configuration.Server}projects${this.configuration.ApiUrl}`)
.toPromise()
.then(response => response.json())
.catch(this.handleError);
}
getProject(ident: number): Promise<Project> {
return this.getProjects()
.then(projects => projects.find(project => project.id === id));
}
Run Code Online (Sandbox Code Playgroud)
我只想摆脱这个规则。通过字符串访问属性有时是必要的。如果您查看您的tslint.json文件,您应该会看到该属性"no-string-literal"。只需将其更改为false。
如果你想保留的规则,然后为这个特定的情况下,你可以只输入到params有一个id。你可以这样做,因为Paramstype很简单{[key: string]: any}
route.params.subscribe((params: {id: string}) =>{
let id = +params.id;
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5667 次 |
| 最近记录: |