Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/33.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/32.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.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
如何将条件css应用于子组件';角5中的s输入字段?_Css_Angular_Sass_Angular Material - Fatal编程技术网

如何将条件css应用于子组件';角5中的s输入字段?

如何将条件css应用于子组件';角5中的s输入字段?,css,angular,sass,angular-material,Css,Angular,Sass,Angular Material,我在尝试根据布尔条件动态设置子组件的“自动完成”字段背景色的样式时遇到了一些问题 在父组件中,我有一个搜索组件,其中包含“角度材质自动完成”字段: <search (notify)="onSearch($event, i)" searchType="Product" [(value)]="repair.product" [ngClass]="{'error-color': repair.invalidProduct}"></search> 有什么方法

我在尝试根据布尔条件动态设置子组件的“自动完成”字段背景色的样式时遇到了一些问题

在父组件中,我有一个搜索组件,其中包含“角度材质自动完成”字段:

<search (notify)="onSearch($event, i)" searchType="Product" 
    [(value)]="repair.product" 
    [ngClass]="{'error-color': repair.invalidProduct}"></search>

有什么方法可以做到这一点吗?

您可以使用属性binding-@input()将布尔值从父组件传递到子组件,并在子组件内部使用它

所以在你的父母身上:

<search [isInvalid]="repair.invalidProduct"></search>
search.component.HTML:

<input [ngClass]="{'error-color': isInvalid}" />

您可以使用属性binding-@input()将布尔值从父组件传递给子组件,并在子组件内部使用该布尔值

所以在你的父母身上:

<search [isInvalid]="repair.invalidProduct"></search>
search.component.HTML:

<input [ngClass]="{'error-color': isInvalid}" />
试试看:

search.error-color ::ng-deep  input {
  background-color: rgba(255, 255, 0, 0.48);
}
或者组件中没有封装样式

@Component({
// ...
encapsulation: ViewEncapsulation.None,
styles: [
  // ...
]
})
试试看:

search.error-color ::ng-deep  input {
  background-color: rgba(255, 255, 0, 0.48);
}
或者组件中没有封装样式

@Component({
// ...
encapsulation: ViewEncapsulation.None,
styles: [
  // ...
]
})

什么是
那是您的组件?正确,那是我的自定义组件,为什么不使用属性绑定并传入布尔值,它将在组件内部使用?什么是
那是您的组件?正确,那是我的自定义组件,为什么不使用属性绑定并传入布尔值,哪些将在组件中使用?谢谢,这是我一直在寻找的解决方案。谢谢,这是我一直在寻找的解决方案。