从angular 2到angularJS的降级指令组件未按预期工作
这是我的角度2组件:从angular 2到angularJS的降级指令组件未按预期工作,angular,angular2-directives,angular2-components,Angular,Angular2 Directives,Angular2 Components,这是我的角度2组件: @Component({ selector: '[my-component]', template:`<ng-content></ng-content>` }) export class MyComponentClass { @Input() myComponent: string; ... 现在,这将不起作用: <div [myComponent]="'my text string'"></div> //
@Component({
selector: '[my-component]',
template:`<ng-content></ng-content>`
})
export class MyComponentClass {
@Input() myComponent: string;
...
现在,这将不起作用:
<div [myComponent]="'my text string'"></div> // or
<div [my-component]="'my text string'"></div>
//或
如果我把它当作组件使用,就像
<my-component [my-component]="'some text'"></my-component>
我做错了什么?
我不希望它被用作一个新的html标记,而是作为一个可以添加到任何html元素的指令(指令) 尝试使用
降级2组件
而不是降级组件
:
import {UpgradeAdapter} from 'angular2/upgrade';
import {myComponent} from './my-component.component.ts';
let upgradeAdapter = new UpgradeAdapter();
.directive('myComponent',
upgradeAdapter.downgradeNg2Component(myComponent))
检查这个 我遇到了同样的问题,并在以下位置找到了一个词:我得到降级升级适配器类型上不存在组件升级适配器您是否从
'angular2/upgrade'
导入升级适配器?还将upgradeAdapter
声明为newupgradeadapter()
?从'@angular/upgrade'导入{upgradeAdapter};不,新的UpgradeAdapter说:提供的参数与任何签名或呼叫目标都不匹配。我更新了我的答案。请记住,您必须导入组件,然后该组件将作为参数在degrandng2component()
中传递。希望它能帮助人类,让我知道!:D
<my-component [my-component]="'some text'"></my-component>
import {UpgradeAdapter} from 'angular2/upgrade';
import {myComponent} from './my-component.component.ts';
let upgradeAdapter = new UpgradeAdapter();
.directive('myComponent',
upgradeAdapter.downgradeNg2Component(myComponent))