2016-09-27 29 views
1

我有一个<myComponent ></myComponent>,我想给类myComponent?添加类到自定义组件角2

This doesnt worked `<myComponent class="my-class"></myComponent>` 

我该怎么做?

+0

什么是你所得到的问题?你是否试图在组件的内容中应用类的风格? –

+0

是的@MadhuRanjan,我想给例如边框颜色,宽度等作为一个控制我的控制 – emanuel07

回答

2
class MyComponent { 
    @HostBinding('class.my-class') 
    isMyClass:boolean = true; 
} 
+0

谢谢,并且在哪里使用** isMyClass **属性? – emanuel07

+0

对不起,我不确定我是否理解这个问题。 'isMyClass'只是我选择的名字。名字并不重要。 ''class.my-class''定义了什么类应该被添加或删除。前缀'@HostBinding()'的属性值用于确定是否应该添加或删除类('true' /'false')。 'isMyClass'这个名字唯一的地方就是当你想改变这个值,比如'this.isMyClass = false;' –

+0

对不起,我不知道你的意思?你想完成什么?什么不在你的问题中使用代码? –

2

不要认为将工作,但也有简单的解决方法:

如果你想你的风格组件的位置/颜色等:

最好的解决方法是把你的<myComponent></myComponent><div>,如果你想你的风格组件的内容应用类到div

将在您的ComponentstyleUrls并用css文件样式您的内容

0

您可以使用主机方法

import {Component} from "@angular/core"; 

@Component({ 
    selector: 'COMPONENT NAME', 
    templateUrl: 'COMPONENT URL', 
    host: { 
     '[class.CLASS NAME]': 'VARIABLE NAME' 
    } 
}) 

export class componentName{ 
}