组件文件夹中的component.scss不起作用

时间:2017-09-14 11:35:09

标签: angular sass

当我将样式代码放在[User Error] Uncaught Exception: Object->__call(): the method 'isnew' does not exist on 'TextBlock' GET /admin/pages/edit/EditForm/field/Blocks/add-multi-class/TextBlock Line 761 in /var/www/vhosts/erlanda/erlanda/wwwroot/framework/core/Object.php 中时,但它不会影响引用的目标,但是当我将样式代码放在component.scss上时,它的效果非常好。有谁知道这是什么问题?

如果缺乏技术知识,请参考我的一些材料进行研究。

4 个答案:

答案 0 :(得分:13)

如果您尝试在子组件内部设置样式,它将无法正常工作。你应该在scss中使用ng-deep。 More information about styling

::ng-deep .className {}

答案 1 :(得分:1)

在组件中,注意StyleUrl的内容:

@Component({
  selector: 'app-something',
  templateUrl: './something.component.html',
  styleUrls: ['./something.component.scss']
})

也许你的语法很糟糕,或者你指的是一个简单的something.component.**css**而不是.scss文件。

答案 2 :(得分:0)

对于我来说,我需要为ViewEncapsulation.None设置styleURLs才能生效:

import { Component, OnInit, ViewEncapsulation } from '@angular/core';

@Component({
  selector: 'app-testing',
  templateUrl: './testing.component.html',
  styleUrls: ['./testing.component.scss'],
  encapsulation: ViewEncapsulation.None,
})
export class TestingComponent implements OnInit {

  constructor() { }

  ngOnInit() {
  }

}

答案 3 :(得分:0)

我不确定是否会帮助您,但对我来说,问题是因为我在组件中使用了styles [],因此无法读取.scss文件。

@Component({
  selector: 'myse-draft-order',
  styleUrls: ['./something.component.scss'],
  templateUrl: './something.html',
  styles: [], // needs to be removed.
})