用其内容替换组件 - 角度2

ben*_*nyl 12 javascript angular

我正在寻找一种方法来获得仅使用其内容呈现的组件.例如,给定组件:

@Component({selector: 'my-cmp', template: '<div> my-cmp </div>'})
class MyComponent {
}
Run Code Online (Sandbox Code Playgroud)

使用angular2渲染它会将以下内容添加到DOM:

<my-cmp>
    <div> my-cmp </div>
</my-cmp>
Run Code Online (Sandbox Code Playgroud)

虽然我想找到一种方法直接渲染它:

<div> my-cmp </div>
Run Code Online (Sandbox Code Playgroud)

可悲的是,因为角度2相对较新(只是测试版) - 谷歌没有那么有用,更不用说当前的文档是多么缺乏..

Pie*_*Duc 15

使用属性选择器可以实现相同的排序

camelCasing对于属性是必需的,因为alpha.52

@Component({
     selector: '[myCmp]', //attribute selector
     template: 'my-cmp'
})
class MyComponent {
}
Run Code Online (Sandbox Code Playgroud)

并使用它来称呼它:

<div myCmp></div>
Run Code Online (Sandbox Code Playgroud)

  • 这使得我的标记很难看,因为组件的标签和类不再是组件的关注.. :-( (3认同)

Den*_*nis 2

根据Angular 1.x 的文档

替换指令的元素本身(如果替换为 true - 已弃用)。

所以我认为这个功能在 Angular 2 上将不可用