Как использовать все классы CSS или код через переменную? - PullRequest
2 голосов
/ 17 марта 2019

У меня есть код CSS в стиле переменных.Я хочу использовать все мои классы через эту переменную.если я напишу свой CSS-код в виде стилей: [p{color:red}], то это сработает.но когда я помещаю свой код в переменную, это выдает мне ошибку «Невозможно прочитать стилизацию неопределенных свойств».

@Component({
  selector: 'page-home',
  templateUrl: 'home.html',
  styles: [this.styling]
})
export class HomePage  
{   
    styling='';  pagenm='';
    constructor(public navCtrl: NavController) {} 

    ionViewDidEnter()
    {
       let api = 'myservice.php';
       let params = '&pagenm='+this.pagenm;
       this.homeserv.p_serv().subscribe(data=>{
       this.styling = data.css;  //data.css contains css code  p{color:red} div{color:yellow; font-size:18px;}
       this.dcode = data.html;
       });
    }
}

1 Ответ

4 голосов
/ 17 марта 2019

Вы не можете получить доступ к свойствам компонента из декоратора класса.

Вместо этого вы можете заранее определить стиль:

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

const styling = `p{color:red}`;

@Component({
  selector: 'page-home',
  templateUrl: 'home.html',
  styles: [styling]
})
export class HomePage {   
  constructor(public navCtrl: NavController) {} 
}

Демонстрация: https://stackblitz.com/edit/angular-tssxv1

...