无法在本机元素上绑定 angular2 指令
Can't bind angular2 directive on native element
我尝试创建一个简单的 angular2 组件,但在将指令绑定到本机 DOM 元素时出现错误。
例如:
/// <reference path="../../typings/_custom.d.ts" />
import { Component, View } from 'angular2/angular2';
import { RouterLink } from 'angular2/router';
@Component({
selector: 'my-component',
directives: [RouterLink]
})
@View({
template: `
<a [router-link]="['/page']">test</a>
`
})
export class MyComponent { }
=> 无法绑定到 'routerLink',因为它不是 '' 元素的已知 属性,并且没有具有相应 [=21= 的匹配指令].
我做错了什么?
- 正如@EricMartinez 所说,"directives" 是 "View" 属性
- 正如@dSebastien 所说,"router-link" 变成了 "routerLink"
- 正如@pardeep-jain 所说,"angular2/angular2" 变成了 "angular2/core","View" 注释被删除,不需要打字行
这是正确的代码:
import { Component } from 'angular2/core';
import { RouterLink } from 'angular2/router';
@Component({
selector: 'my-component',
directives: [RouterLink],
template: `
<a [routerLink]="['/page']">test</a>
`
})
export class MyComponent { }
Angular2 现在处于测试阶段,所以这里有很多关于这个问题的更改可能对某人有帮助。
import { Component, View } from 'angular2/angular2'
改为import {Component, View } from 'angular2/core'
有关根据测试版的所有进口清单,请参见此处
(在大多数情况下不需要使用视图注释,因为视图注释的所有功能都包含在组件注释中)。
无需在组件顶部写打字行,因为 angular 团队默认包含打字
https://github.com/angular/angular/blob/master/CHANGELOG.md#200-alpha42-2015-10-13
router-link
改为 routerLink
我尝试创建一个简单的 angular2 组件,但在将指令绑定到本机 DOM 元素时出现错误。
例如:
/// <reference path="../../typings/_custom.d.ts" />
import { Component, View } from 'angular2/angular2';
import { RouterLink } from 'angular2/router';
@Component({
selector: 'my-component',
directives: [RouterLink]
})
@View({
template: `
<a [router-link]="['/page']">test</a>
`
})
export class MyComponent { }
=> 无法绑定到 'routerLink',因为它不是 '' 元素的已知 属性,并且没有具有相应 [=21= 的匹配指令].
我做错了什么?
- 正如@EricMartinez 所说,"directives" 是 "View" 属性
- 正如@dSebastien 所说,"router-link" 变成了 "routerLink"
- 正如@pardeep-jain 所说,"angular2/angular2" 变成了 "angular2/core","View" 注释被删除,不需要打字行
这是正确的代码:
import { Component } from 'angular2/core';
import { RouterLink } from 'angular2/router';
@Component({
selector: 'my-component',
directives: [RouterLink],
template: `
<a [routerLink]="['/page']">test</a>
`
})
export class MyComponent { }
Angular2 现在处于测试阶段,所以这里有很多关于这个问题的更改可能对某人有帮助。
import { Component, View } from 'angular2/angular2'
改为
import {Component, View } from 'angular2/core'
有关根据测试版的所有进口清单,请参见此处
(在大多数情况下不需要使用视图注释,因为视图注释的所有功能都包含在组件注释中)。
无需在组件顶部写打字行,因为 angular 团队默认包含打字 https://github.com/angular/angular/blob/master/CHANGELOG.md#200-alpha42-2015-10-13
router-link
改为routerLink