没有视图的 Angular 2 组件
Angular 2 component without a view
是否可以在不使用模板或@View的情况下使用 Angular 2?
我正在寻找一种类似的方式,就像您在示例中所做的那样:
角度 1
索引.html
<div ng-controller="appcontroller">
<div ng-class="{active: isActive()}">
.....
</div>
</div>
应用.js
angular.module('app', []).controller('appcontroller', function(){
$scope.isActive = function(){
return true;
}
});
我猜它看起来像这样,如果可能的话:
角度 2
索引.html
<app>
<div [ngclass]="{active: isActive()}">
.....
</div>
</app>
应用程序
import {Component} from 'angular2/core';
@Component({
selector: 'app'
})
export class AppComponent {
isActive(){
return true;
}
}
但不幸的是,我收到错误:
... must have either 'template', 'templateUrl', or '@View' set.
我不太喜欢把html放在Javascript中,所以我希望有某种解决方法或方法来做到这一点。
实际上,您应该像这样实现AppComponent
:
import {Component} from 'angular2/core';
@Component({
selector: 'app'
template: `
<div [ngClass]="{active: isActive()}">
.....
</div>
`
})
export class AppComponent {
isActive(){
return true;
}
}
或使用 templateUrl
属性:
import {Component} from 'angular2/core';
@Component({
selector: 'app'
templateUrl: 'component.html'
})
export class AppComponent {
isActive(){
return true;
}
}
并像这样使用组件:
<app></app>
如果在 app
标记中放置一些 HTML,这意味着您希望使用 ng-content
向组件提供一些可以包含在组件模板中的内容。下面是一个示例:Angular 2 模板组件。
希望对您有所帮助,蒂埃里
相关文章:
- 我的shareService在angular 2中发送值工作正常,但当我渲染我的另一个组件时,会获得默认值
- Typescript编译器错误,Angular 1.5组件应为分号
- OnsenUI、Angular和在警报对话框后刷新UI组件
- 向Angular 2组件发出传递值
- 如何正确处理依赖ViewChild和Angular 2中可观察到的数据的组件上的更改检测
- Angular 2,在没有直接关系的两个组件之间共享一个对象
- Angular 2-如何从ControlGroup访问子组件
- Angular 1.5组件中的Angular Bootstrap Modal$uibModalInstance未知提供程
- 如何获取子组件的内容Angular 2中的子组件
- Angular 2 - 从父组件的“第一个子”组件到“第二个子”组件的路由
- 如何创建一个组件,我可以设置在 Angular 2 中的属性中获取 URL 数据
- Angular 2中组件的自定义用户模板
- 是否可以将服务注入Angular 1.5组件's templateUrl属性
- 如何在使用ui路由器时构造angular.js应用程序组件
- Angular 2:是相对于当前组件的styleUrl
- 如何使用Angular 1.5组件将属性求值为字符串,这是一个自定义函数
- 检查外部js脚本是否已经在组件Angular 2中
- 日期组件Angular 2
- 登录后重新加载导航组件重定向到另一个组件 Angular 2
- 将输出从子组件发送到父组件 - Angular 2