Angular2 RC1No Directive 注释在 PropDecoratorFactory 上找到 @Input
Angular2 RC1No Directive annotation found on PropDecoratorFactory with @Input
我正在尝试将输入参数传递给组件,但我遇到了这个异常:
browser_adapter.ts:78 异常:错误:未捕获(承诺):在 PropDecoratorFactory
上找不到指令注释
我尝试了 中描述的解决方案,但没有解决我的问题:
这是我的代码:
import {Component, provide, Input} from '@angular/core';
import {bootstrap} from '@angular/platform-browser-dynamic';
import {Http, HTTP_PROVIDERS} from '@angular/http';
import {RouteConfig, ROUTER_DIRECTIVES, Router, ROUTER_PROVIDERS} from '@angular/router-deprecated'
@Component({
selector: 'sub',
template : `<p>input: {{someInput}}</p>`,
directives: [Input]
})
export class SubComponent {
@Input() someInput: Number;
}
@Component({
selector: 'home',
template : `<p>home</p><sub [someInput]="someInput"></sub>`,
directives: [SubComponent]
})
export class HomeComponent {
someInput: Number = 123;
}
@Component({
selector: 'my-app',
template: '<h1>here!</h1><router-outlet></router-outlet>',
directives: [ROUTER_DIRECTIVES],
providers: [ROUTER_PROVIDERS]
})
@RouteConfig([
{ path: '/home', name: "Home", component: HomeComponent, useAsDefault: true}
])
export class App {
}
从 directives
数组行中删除 Input
@Component({
selector: 'sub',
template : `<p>input: {{someInput}}</p>`,
directives: [Input] // <---- this is causing it
})
export class SubComponent {
@Input() someInput: Number;
}
输入不是指令,它是组件输入的装饰器,仅在 class 中使用,而不是在 html 中使用。
我正在尝试将输入参数传递给组件,但我遇到了这个异常: browser_adapter.ts:78 异常:错误:未捕获(承诺):在 PropDecoratorFactory
上找不到指令注释我尝试了
这是我的代码:
import {Component, provide, Input} from '@angular/core';
import {bootstrap} from '@angular/platform-browser-dynamic';
import {Http, HTTP_PROVIDERS} from '@angular/http';
import {RouteConfig, ROUTER_DIRECTIVES, Router, ROUTER_PROVIDERS} from '@angular/router-deprecated'
@Component({
selector: 'sub',
template : `<p>input: {{someInput}}</p>`,
directives: [Input]
})
export class SubComponent {
@Input() someInput: Number;
}
@Component({
selector: 'home',
template : `<p>home</p><sub [someInput]="someInput"></sub>`,
directives: [SubComponent]
})
export class HomeComponent {
someInput: Number = 123;
}
@Component({
selector: 'my-app',
template: '<h1>here!</h1><router-outlet></router-outlet>',
directives: [ROUTER_DIRECTIVES],
providers: [ROUTER_PROVIDERS]
})
@RouteConfig([
{ path: '/home', name: "Home", component: HomeComponent, useAsDefault: true}
])
export class App {
}
从 directives
数组行中删除 Input
@Component({
selector: 'sub',
template : `<p>input: {{someInput}}</p>`,
directives: [Input] // <---- this is causing it
})
export class SubComponent {
@Input() someInput: Number;
}
输入不是指令,它是组件输入的装饰器,仅在 class 中使用,而不是在 html 中使用。