美文网首页
2018-08-30: ng-style={{}} 为什么不能检

2018-08-30: ng-style={{}} 为什么不能检

作者: _信仰zmh | 来源:发表于2018-08-30 16:38 被阅读28次

写在最前面

ng-style 后面的表达式可以动态变化 ,但是我现在发现一个问题就是,默认加载了第一次的style之后,后期修改style 的名称之后,style名称已经发生改变,但是 样式还是首次加载时的样式 ,也就是 修改的style样式无法动态改变 ,这个很令我费解,所以写在这里,记录一下,或者有知道为什么的滴滴我。

为了解决这个问题,暂时不知道从ng-style本身何处入手,我换了另一种写法,也就是 ng-class,动态的改变class,这样ng-class后面动态改变class名,对应 页面上的样式 也会 立即响应 跟着变化。


不行

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.bootcss.com/angular.js/1.4.6/angular.min.js"></script>
</head>
<body ng-app="myApp" ng-controller="myCtrl as m">

<h1 ng-style="{{m.my}}">{{m.as}}</h1>
    <button ng-click = "m.change()">ckckckc</button>

<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
    
    var vm = this;
    vm.my="m.myObj";
    vm.as = "131231";
  vm.myObj = {
    "color" : "white",
    "background-color" : "coral",
    "font-size" : "60px",
    "padding" : "50px"
  }
   vm.myObj2 = {
    "color" : "red",
    "background-color" : "green",
    "font-size" : "60px",
    "padding" : "50px"
  }
    
    
    vm.change = function(){
        console.log(vm.my)
        
        vm.my="m.myObj2";
        vm.as = "fffffffff";
        console.log(vm.my)
    }
});
</script>

</body>
</html>

也不行

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.bootcss.com/angular.js/1.4.6/angular.min.js"></script>
</head>
<body ng-app="myApp" ng-controller="myCtrl as m">

<h1 ng-style="{'background-color':{{m.color}}=='red'?'red':'green'}">菜鸟教程</h1>
    
<button ng-click="m.ck()">按钮</button>
<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
 var vm = this;
    vm.color = "red";
    vm.ck = function(){
        console.log("1");
    vm.color = "red";
    }
});
</script>

</body>
</html>

不行

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.bootcss.com/angular.js/1.4.6/angular.min.js"></script>
</head>
<body ng-app="myApp" ng-controller="myCtrl as m">

<h1 ng-style="{'background-color':'{{m.color}}'}">菜鸟教程</h1>
    
<button ng-click="m.ck()">按钮</button>
<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
 var vm = this;
    vm.color = "red";
    vm.ck = function(){
        console.log("1");
    vm.color = "blue";
    }
});
</script>

</body>
</html>

相关文章

  • 2018-08-30: ng-style={{}} 为什么不能检

    写在最前面 ng-style 后面的表达式可以动态变化 ,但是我现在发现一个问题就是,默认加载了第一次的style...

  • Angular基础教程二

    (7)ng-style 指令 ng-style 指令为 HTML 元素添加 style 属性。 ng-style ...

  • 2018-09-01

    2018-08-30 明小萌 2018-08-30 22:02 · 字数 223 · 阅读 2 · 日记本 201...

  • 2018-09-05

    2018-08-30 c6_李晓红Dorothy 2018-08-30 07:44 · 字数 320 · 阅读 1...

  • ng-style

    ng-style 通过ng-model绑定style的value值就可以让用户自定义设置

  • 关于ng-class,ng-style的用法

    关于ng-class,ng-style的用法 ng-class的使用几种方式(1):利用双向数据绑定(classN...

  • 抽血记

    怀孕之后,抽血变成了每次产检的必查项。抽血之前不能吃,不能喝,于是必须携带饥肠辘辘的大肚子去排队。为什么不让老公帮...

  • 蒙特梭利教学Day1

    今天重点的讲解是关于安全问题,消防栓的使用,以及一些园区的孩子健康问题。为什么要给孩子每日三检:早检,午检,晚检。...

  • hexo博客同时托管到github和coding

    title: 将hexo博客同时托管到github和codingdate: 2018-08-30 00:12:11...

  • ng-style中使用filter

    **问题原因: ** Angular中使用boostrap的progress在ie8下有问题, 不能显示出进度 错...

网友评论

      本文标题:2018-08-30: ng-style={{}} 为什么不能检

      本文链接:https://www.haomeiwen.com/subject/mdrdwftx.html