Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.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
AngularJS-如何重构CSS代码样式_Css_Angularjs_Styles - Fatal编程技术网

AngularJS-如何重构CSS代码样式

AngularJS-如何重构CSS代码样式,css,angularjs,styles,Css,Angularjs,Styles,我有一个像这样的角函数: $scope.colorValidator = function () { $scope.token_style = ""; $scope.expdate_style = ""; if (!$scope.$$childHead.billingblock.accountID.$valid) { $scope.token_style = {border: "1px solid #ff0000"} } if (!$

我有一个像这样的角函数:

$scope.colorValidator = function () {

    $scope.token_style = "";
    $scope.expdate_style = "";

    if (!$scope.$$childHead.billingblock.accountID.$valid) {
        $scope.token_style = {border: "1px solid #ff0000"}
    }

    if (!$scope.$$childHead.billingblock.expDate.$valid) {
        $scope.expdate_style = {border: "1px solid #ff0000"}
    }

};
如何在常量变量中设置
{border:“1px solid#ff0000”}
(可能像红色),并在每次验证中设置它


编辑:我正在为每个输入设置
ng样式
(在视图中)。

您不需要这样做

当字段无效时,请检查标记,它们应用了
ng dirty
ng invalid

使用它们来设置控件的样式

.my-special-form .ng-invalid {
    border: 1px solid #ff0000
}
请看这里:

即:


我解决了这个问题,设置了一个变量:

var redColor = {border: "1px solid #ff0000"};

if (!$scope.$$childHead.billingblock.accountID.$valid) {
     $scope.token_style = redColor;
}

感谢每个人的回答。

而不是在JavaScript中做一个常量,你应该考虑创建CSS类<代码>有效字段,并根据需要使用JavaScript。样式属于样式表,而不是代码。哦,我怎样才能将它添加到代码中呢?例如:
$scope.expdate\u style='valid field'
?看起来Angular为您预定义了一个类:
.ng invalid
。请参阅@vittore的答案。现在,当页面加载时,它显示ng对所有必填字段无效。
var redColor = {border: "1px solid #ff0000"};

if (!$scope.$$childHead.billingblock.accountID.$valid) {
     $scope.token_style = redColor;
}