【发布时间】:2017-06-21 19:36:06
【问题描述】:
在 Angular 1 中,我可以将任何元素定义为根元素,并且不会替换任何已经编写的内联 HTML。 例如角度为 1。
<body>
<div ng-app="">
<h1><?php echo $heading_this_page;?></h1>
<p>Name : <input type="text" ng-model="name" placeholder="Enter name here"></p>
<h1>Hello {{name}}</h1>
</div>
</body>
但是在 Angular 2 中,如果我在上面这样写的话。
<body>
<ng-app>
<h1><?php echo $heading_this_page;?></h1>
<p>Name : <input type="text" ng-model="name" placeholder="Enter name here"></p>
<h1>Hello {{name}}</h1>
</ng-app>
</body>
我使用ng-app 作为主/根组件选择器,ng-app 元素的 innerHTML 被组件的 HTML 替换。
@Component({
selector: 'ng-app',
template:'<h1>App works</h1>";
directives: [UsersComponent]
})
即 ng-app 的 innerHtml 现在变为 <h1>App works</h1> 。我想保留ng-app之前的内容。
如果这是不可能的,我可以做如下的事情。
<body>
<ng-app>
<h1><?php echo $heading_this_page;?></h1>
<p>Name : <input type="text" ng-model="name" placeholder="Enter name here"></p>
<h1>Hello {{name}}</h1>
<render-component-here></render-component-here>
</ng-app>
</body>
ng-app 是我的主要组件(加载时引导),它应该在 <render-component-here></render-component-here> 元素中呈现其数据(而不是通过替换以前的内容本身)
【问题讨论】:
-
检查我更新的答案。您会发现在 index.html 中指定的组件中有
ng-content不起作用