将组件替换为其内容-angular 2
replace component with its content - angular 2
我正在寻找一种方法,使组件只与其内容一起呈现。例如,给定组件:
@Component({selector: 'my-cmp', template: '<div> my-cmp </div>'})
class MyComponent {
}
用angular2渲染它将向DOM添加以下内容:
<my-cmp>
<div> my-cmp </div>
</my-cmp>
而我想找到一种方法,直接渲染为:
<div> my-cmp </div>
遗憾的是,由于angular 2相对较新(刚刚进行了测试)-谷歌没有那么大帮助,更不用说目前的文档有多缺乏了。
使用属性选择器可以实现相同的排序
自字母52 以来,属性必须使用camelCasing
@Component({
selector: '[myCmp]', //attribute selector
template: 'my-cmp'
})
class MyComponent {
}
用这个来称呼它:
<div myCmp></div>
您可以执行以下操作:
@Component({selector: 'div.my-cmp', template: 'my-cmp'})
class MyComponent {
}
以及在您的HTML:中
<div class="my-cmp" />
根据角度1.x 的文档
替换指令的元素本身(如果Replace为true-已弃用)。
所以我认为这个功能将不可用,因为angular 2
我记得几年前我问过Angularjs一个类似的问题。当时的共识似乎是,现在可能是,你可能不想这么做。
它破坏了语义:<video/>
或<input/>
不会分解为其内容。您的Angular组件也不应该。
你可能仍然可以通过更深入地思考你的标记/css来实现你想要的东西?也许如果你充实你的用例,我们可能会给你一个替代方案?
相关文章:
- Typescript编译器错误,Angular 1.5组件应为分号
- 向Angular 2组件发出传递值
- Angular 1.5组件中的Angular Bootstrap Modal$uibModalInstance未知提供程
- 是否可以将服务注入Angular 1.5组件's templateUrl属性
- 如何使用Angular 1.5组件将属性求值为字符串,这是一个自定义函数
- Angular 2组件测试错误:无法解析'TestComponentBuilder'
- Angular 1.5组件双向绑定不起作用
- <对象>中的 SVG 不会显示在 IE 的 Angular 2 组件中
- 如何在回调函数的 Angular 1.5 组件中处理这个问题
- 如何在 Angular 1.5 组件中等待绑定(没有 $scope.$watch)
- Angular 1.5 组件 onChanges 不起作用
- 没有视图的 Angular 2 组件
- 如何在纯ES5(Javascript)中向angular组件注入自定义服务
- mdSidenav服务可以'当一个组件's在Angular组件内部
- Angular 1.5组件方法templateUrl+函数
- 我可以使用AngularJS's$q在Angular组件之外
- Angular组件构造函数被调用两次
- angular组件中的模板没有按预期工作
- Angular指令到Angular 1.5组件
- 从Angular 2组件中调用纯javascript函数