Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.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
Angular 以字符串形式导入CSS_Angular_Webpack - Fatal编程技术网

Angular 以字符串形式导入CSS

Angular 以字符串形式导入CSS,angular,webpack,Angular,Webpack,我的Angular(v5.2)项目中有一个css文件。它包含在我的全球风格中,在应用程序中运行良好,正如我所希望的那样。但是,我还需要将此文件作为字符串读取,并对其执行其他操作。基本上,为了避免重复代码,我希望能够做到: import styles from 'styles.css'; // styles should be a string // later console.log(styles); // do something with the string 我有办法做到这一点吗 编辑

我的Angular(v5.2)项目中有一个css文件。它包含在我的全球风格中,在应用程序中运行良好,正如我所希望的那样。但是,我还需要将此文件作为字符串读取,并对其执行其他操作。基本上,为了避免重复代码,我希望能够做到:

import styles from 'styles.css'; // styles should be a string

// later
console.log(styles); // do something with the string
我有办法做到这一点吗


编辑:我正在寻找一种不使用任何请求(即,我不想将css移出src)的方法来完成此操作。

假设您在资产文件夹中有css,您可以将文件读取为

cssUrl = 'assets/styles.css';
readCssData () {
  this.http.get(this.cssUrl)
    .subscribe(
      data => {
        console.log(data.text())
      },
      err => {
        console.log(err)
      });
 }

要读取JSON或CSS中的任何类型的文件,可以在angular中使用HttpClient Get方法,如下所示

  • 将css放在特定文件夹中。(例如assets/styles.css)
  • 使用get方法进行服务调用
在componen.ts或service.ts中,您可以使用以下代码获取css文件

readCSSFile (url) {
  this.http.get(url)
    .subscribe(
      cssData => {
        console.log(cssData)
      },
      err => {
        console.log(err)
      });
 }

 readCSSFile('./assets/styles.css');

注意:您应该根据文件夹结构更改路径/url。

谢谢,但我正在寻找一种无需任何额外网络请求的方法。谢谢,但我正在寻找一种无需任何额外网络请求的方法。