Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何访问typescript文件中的css类?_Javascript_Jquery_Css_Angular_Typescript - Fatal编程技术网

Javascript 如何访问typescript文件中的css类?

Javascript 如何访问typescript文件中的css类?,javascript,jquery,css,angular,typescript,Javascript,Jquery,Css,Angular,Typescript,在这里,我想使用angular.js中的ngClass指令将CSS类动态添加到元素中 <p [ngClass]="addClasses()">testing content</p> boldClass和italicsClass是css文件中的两个类,这些类应根据相应布尔变量中的值应用。 但是我得到了一个错误,因为无法找到boldClass和italicsClass的名称。非常感谢您的帮助。这是添加动态类的一种方法 <p [class.boldClass]="isb

在这里,我想使用angular.js中的ngClass指令将CSS类动态添加到元素中

<p [ngClass]="addClasses()">testing content</p>
boldClass和italicsClass是css文件中的两个类,这些类应根据相应布尔变量中的值应用。
但是我得到了一个错误,因为无法找到boldClass和italicsClass的名称。非常感谢您的帮助。

这是添加动态类的一种方法

<p [class.boldClass]="isbold"
   [class.italicsClass]="isItalic">testing content </p>
测试内容


问题在于您的JSON,当您声明JSON时,它的属性不应该与“=”一起使用,请尝试使用类似于:

addClasses(){
  let classes={
    boldClass: this.isbold,
    italicsClass: this.isItalic
  };
  return classes;
}

在this.isbold之后有一个挂起的“,”,还有,您有this.Italic,应该是this.istalic。

尝试使用Angular的渲染器2

@ViewChild('el') element: ElementRef
constructor(private renderer: Renderer2) {
}

addClasses(classes: Array<string>){
  classes.forEach(class => this.renderer.addClass(this.element.nativeElement, 'someClass'))

}



 <p #el>testing content </p>
@ViewChild('el')元素:ElementRef
构造函数(专用渲染器:渲染器2){
}
addClasses(类:数组){
class.forEach(class=>this.renderer.addClass(this.element.nativeElement,'someClass'))
}
测试内容

ts:

模板:

<p [ngClass]="addClasses()">testing content </p>

你到底在干什么?您想将粗体或斜体类添加到标记中吗?在对象文本中不使用
=
,而是使用
。因此,
boldClass:例如,这个.isbold
@ViewChild('el') element: ElementRef
constructor(private renderer: Renderer2) {
}

addClasses(classes: Array<string>){
  classes.forEach(class => this.renderer.addClass(this.element.nativeElement, 'someClass'))

}



 <p #el>testing content </p>
import { Component } from '@angular/core';

@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: [ './app.component.css' ]
})
export class AppComponent  {
  isbold: boolean = false;
  isItalic: boolean = true;

  addClasses() {
     let classes = {
       boldClass: this.isbold,
       italicsClass: this.isItalic
     };
     return classes;
   }
}
<p [ngClass]="addClasses()">testing content </p>
.boldClass {
   font-weight: bold;
}

.italicsClass {
   font-style: italic;
}