• 技术文章 >web前端 >js教程

    Angular学习之详解样式绑定(ngClass和ngStyle)的使用

    青灯夜游青灯夜游2022-12-07 19:03:46转载405

    项目场景:

    前端开发中经常会遇到这样一种情况:不同的页面会共用同一段代码,同时我们要根据页面的具体信息或者某种操作(例如点击某个按钮)去决定是否展示这段代码或使页面样式做出一定的改变,这时就用到我们angular中的样式绑定!


    问题描述

    例如:网站的两个页面需要用到同样一段代码,重复写两遍不符合dry(don’t repeat yourself)原则,效率也很低,所以公司里angular的前端开发项目中通常不会这么做。如果有一天领导告诉你:zzz,麻烦你改下代码,这句提示语我在这个页面想要呈现这个效果,在另一个页面要那个效果,这时你该怎么办呢?下面以一个简单的例子来说明。【相关教程推荐:《angular教程》】

    公用的代码片段(修改前):

    <div class="normalTxt">      
    	<span >I love angular</span>         
    </div>

    原因分析:

    angular中的样式绑定可以实现上述需求,angular有两种样式绑定指令:[ngStyle],[ngClass]
    注意:使用时必须用[ ] 方括号把他们括起来!

    1.[ngStyle]

    <any [ngStyle]=“obj”>

    说明:

    简单用法(html文件):

    //将这段div的背景色改为绿色
    <div [ngStyle]="{'background-color':'green'}">
    xxxx
    </div>

    复杂用法(html文件):

    //如果当前页面为主页则将背景色改为绿色,否则改为红色
    <div [ngStyle]="{'background-color':pageName== 'homepage' ? 'green' : 'red' }">
    xxxx
    </div>

    2.[ngClass]

    <any [ngClass]=“obj”>

    说明:

    简单用法(html文件):

    //使用.homepageText样式
    <div [ngClass]="{'homepageText':true}">
    xxxx
    </div>

    复杂用法(html文件):

    //当页面名称是homepage时使用.homepageText样式,否则不使用
    <div [ngClass]="{'homepageText':pageName =='homepage'}">
    xxxx
    </div>

    (css文件):

    .homepageText {    
    font-size: 14px;
    font-weight: bold;
    }

    解决方案:

    以下是开头问题的解决方案,希望给各位带来一些启发

    公用的代码片段(修改后):

    <div [ngClass]="{'normalTxt':pageTitle=='portal' ,'specialTxt':pageTitle=='detail'}">   
       <span>I love angular</span>         
    </div>

    说明:portal页面想要展示normalTxt的效果,detail页面想要展示specialTxt的效果。normalTxt和specialTxt具体样式需要我们在相应的.css/.scss文件里添加。

    更多编程相关知识,请访问:编程入门!!

    以上就是Angular学习之详解样式绑定(ngClass和ngStyle)的使用的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:csdn,如有侵犯,请联系admin@php.cn删除
    专题推荐:样式绑定 Angular
    上一篇:带你了解Nodejs中的非阻塞异步IO 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 聊聊如何使用MemFire Cloud构建Angular应用程序• 聊聊自定义angular-datetime-picker格式的方法• 聊聊Angular中懒加载模块并动态显示它的组件• Angular学习之聊聊Directive指令• 浅析Angular项目中使用 SASS 样式的方法
    1/1

    PHP中文网