Anu*_*thi 6 angular-template angular
在angular 1中,我可以将任何元素定义为root元素,并且不能替换任何已编写的内联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>
Run Code Online (Sandbox Code Playgroud)
但是在角度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>
Run Code Online (Sandbox Code Playgroud)
并且我用ng-app作主/根组件选择器,将ng-app元素的innerHTML 替换为组件的HTML。
@Component({
selector: 'ng-app',
template:'<h1>App works</h1>";
directives: [UsersComponent]
})
Run Code Online (Sandbox Code Playgroud)
即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>
Run Code Online (Sandbox Code Playgroud)
ng-app我的主要组件在哪里(加载时引导)在哪里,它应该在<render-component-here></render-component-here>元素中呈现其数据(而不是通过替换以前的内容本身)
<ng-content>是您查询的答案
更改您的代码
从 :
@Component({
selector: 'ng-app',
template:'<h1>App works</h1>";
directives: [UsersComponent]
})
Run Code Online (Sandbox Code Playgroud)
到 :
@Component({
selector: 'ng-app',
template:'<h1>App works</h1> <ng-content></ng-content>";
directives: [UsersComponent]
})
Run Code Online (Sandbox Code Playgroud)
如果您想了解有关 ng-content 的更多信息: https://scotch.io/tutorials/angular-2-transclusion-using-ng-content
| 归档时间: |
|
| 查看次数: |
545 次 |
| 最近记录: |