【发布时间】:2016-04-10 18:36:58
【问题描述】:
我是 TypeScript 和 Angular 2 的新手。我正在将一个项目从 Angular 1 转移过来,但我无法将我的一些属性定义放入 Angular 2 组件中。
我有这些属性定义:
import { Component } from 'angular2/core';
@Component({
selector: 'contact-detail',
templateUrl: 'app/contacts/contact-detail.template.html',
styleUrls: ['app/contacts/contact-detail.style.css']
})
export class ContactDetailComponent {
contactFormOptions = {};
contactFormOptions.initDateDefault = '';
contactFormOptions.followUpDateDefault = '';
contactBasicInfo: {};
contactBasicInfo.bdMonth = '0';
contactBasicInfo.bdDay = '0';
}
Angular 1 很适合我用这种方式定义对象属性(如 contactFormOptions.initDateDefault = '';)。使用点语法。然而,Typescript 对这些属性的点表示法感到窒息,并说; 是预期的。为什么?我错过了什么?
谢谢!
【问题讨论】:
-
我猜这些属性没有定义。您应该使用括号表示法
-
对此也感到窒息:
contactFormOptions['initDateDefault'] = moment();说它期望=。我正在尝试在这些行中定义属性以供以后使用。 -
您能否提供更多有关此代码运行位置的上下文? :)
-
好的,我添加了整个组件。不过,我确实删除了与定义这些属性无关的方法和东西。
标签: angularjs typescript javascript-objects