我是Angular 2的初学者。我在visual studio中通过编码尝试了一些教程。我安装了npm,nodejs和angular / cli。当我在关于打字稿的视觉工作室代码上运行一些例子时,我在尝试使用javascript单词时遇到错误'这个'
只有当我使用javascript字时才会出现错误'此'除此之外,它没有错误。对此有何解决方案?谢谢。
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-user',
templateUrl: './user.component.html',
styleUrls: ['./user.component.css']
})
export class UserComponent implements OnInit {
name:string = 'John Doe';
age:number = 50;
email:string = 'someone@example.com';
address: {
street:string,
city:string,
postalcode:number
}
constructor() {
console.log('constructor . .. ');
}
ngOnInit() {
console.log('ngonit . . . ');
}
public.address = {
street:'adsadsasd',
city: 'asdsad',
postalcode: 123132
}
}
答案 0 :(得分:1)
你应该将this.address={..}
包裹在一个函数中。
您可以将其包装到ngOnInit
函数中。
我建议你在一个单独的类中创建一个模型。
export class AddressModel{
constructor(public street:string='', public city:string='', public postalcode:number=0);
}
并在component.ts
。
address:AddressModel= new AddressModel();
答案 1 :(得分:0)
只有当我使用javascript字时才会出现错误'此'除此之外,它没有错误。对此有何解决方案?谢谢。
不要使用它。在TypeScript中,我们鼓励您以这种方式编写成员:
public address: {...} = {...};
public
是可选的。
例如,在您的课程中,您可以:
public address: {
street:string,
city:string,
postalcode:number
} = {
street:'adsadsasd',
city: 'asdsad',
postalcode: 123132
}
答案 2 :(得分:0)
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-user',
templateUrl: './user.component.html',
styleUrls: ['./user.component.css']
})
export class UserComponent implements OnInit {
name:string = 'John Doe';
age:number = 50;
email:string = 'someone@example.com';
address: {
street:string,
city:string,
postalcode:number
}
constructor() {
console.log('constructor . .. ');
}
ngOnInit() {
console.log('ngonit . . . ');
this.address = {
street:'Chicago',
city: 'America',
postalcode: 123132
};
}
}
此代码适用于我。我通过在ngOnIt()函数中包装this.address来改变。谢谢你们。