angular动态绑定样式以及改变UI框架样式的方法

时间: 2018-09-03阅读: 2433标签: angular

一:angular动态绑定样式

举个栗子:

<tr *ngFor="let dataTr of tableData;let i = index" [formGroupName]="i" [ngClass]='isHideClass(i)'>


isHideClass(index){
    const data = this.tableData[index];
    // if(data['532411351520251904'].value.valueText===''&&data['532411588670394368'].value.valueText===''
    // &&data['532411670509654016'].value.valueText==='') {
    //   return 'hide_tr'
    // }
    let arr = [];
    for (let i in data) {
      arr.push(data[i]);
    }
    if(arr.every((val,idx)=>{
       return val.value.valueText === ''
    })){
      return 'hide_tr'
    }
}


hide_tr是类名

.hide_tr{
display: none !important;
}


解释:ngClass要绑定的类名会在tr根据数据循环生成html的过程中调用组件中定义的isHideClass()方法,并把i(index)带过去让方法使用
根据方法逻辑返回的类名去绑定写好的样式isHideClass(index){return 'hide'},这时候这个ngClass就绑定上了hide这个类名的样式


二:angular改UI框架样式(例子是蚂蚁金服的UI框架

例子:

::ng-deep{
    .ant-card-head-title{
      font-weight: bold;
    }
    .ant-table-placeholder{
      display: none;
    }
    .ant-card-body {
      padding-bottom: 0px
    }
    .hide_tr{
      display: none !important;
    }
}


在要改的样式前面加上::ng-deep,就可以改变框架定义好的样式

来源:https://www.cnblogs.com/leileilei/archive/2018/09/02/9574786.html


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: http://www.fly63.com/article/detial/1046

Angular HMR(热模块替换)功能实现方法

在使用Angular的时候,希望能像VUE那样,修改代码后浏览器不刷新,页面对应修改的组件自动更新的功能。这个功能的名字时HMR (hot module replace)。稍微研究了一下,发现在angular/cli创建的项目中,实现这个不算太难,步骤如下

Angular框架解读--多级依赖注入设计

在 Angular 应用中,各个组件和模块间又是怎样共享依赖的,同样的服务是否可以多次实例化呢?组件和模块的依赖注入过程,离不开 Angular 多级依赖注入的设计,我们来看看。

angular material怎么安装?

Angular Material 作为 Angular 的官方组件库,无论是设计交互还是易用性都有着极高的质量。正如官方所说其目的就是构建基于 Angular 和 TypeScript 的高质量组件库。

angular.js和vue.js中实现函数去抖

搜索输入框中,只当用户停止输入后,才进行后续的操作,比如发起Http请求等。本文将分别探讨在angular.js和vue.js中如何实现对用户输入的防抖。

解决angularJS解决数据显示闪一下的问题?

使用 angular JS 的时候,把 angularJS 放到文件底部,在渲染页面的时候,会出现闪一下的情况。解决办法:1、使用 ng-cloak ;2、将angular.js的引入放到head前,提前加载;3、使用 ng-bind

angular有必要学吗?

对于前端开发人员来说,angular是非常有必要学习的,它可以使Web应用开发比以往更简单、更快捷;同时也降低了构建复杂应用的难度。更何况很多后端职位都要求掌握angular了。Angular是一个使用 HTML 和 JavaScript 编写的 Web 前端框架

Angular是哪个公司的?

Angular是一个基于TypeScript的开源Web应用程序框架,用于在HTML和JavaScript中构建Web应用程序。Angular诞生于2009年,由Misko Hevery 等人创建,后为Google所收购,由Google维护。它最初是作为Google的一个项目启动的,但现在它是开源框架。

成为优秀Angular开发者所需要学习的19件事

一款to-do app基本等同于前端开发的“Hello world”。虽然涵盖了创建应用程序的CRUD方面,但它通常只涉及那些框架或库也能做到的皮毛而已。Angular看起来似乎总是在改变和更新

你所要知道的所有关于Angular的变化检测机制

如果想像我一样全面的了解Angular的脏值检测机制,除了浏览源代码之外别无他法,网上可没有太多可用信息。大部分文章都提到,Angular中每个组件都自带一个脏值检测器,但是它们都仅仅停留在脏值检测的策略和案例的使用,并没有做太多的深入。

AngularJS中几种Providers的区别

AngularJS文档对provider的定义:provider是一个带有$get()方法的对象。injector调用$get方法创建一个新的service的实例。provider还有一些其他的方法,可以用来配置provider。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!