• Angular 4 自定义组件封装遇见的一些事儿



    你用Angular 吗?

    一.介绍

        说说封装Angular 组建过程中遇见的一些问题和感悟。用久了Angular,就会遇见很多坑,许多基于Angular开发的框架最喜欢做的事情就是封装组件,然后复用.....因为这是最省事的。

    二.基本构建组件思想


    界面构建草图

      简要介绍上图:

        1.View 就是我们需要完成的界面,但是界面无非就是由若干个label,button,table,img,list等一些基本控件构成的,所有的前端页面构成都是一样,只是加上CSS排版确定最后的显示效果。

        2.五种基类,其实不止五种,只是列举。这里就需要我们将基类都封装成组件的形式,对外提供组件标签就可以使用。不管构建多少个页面,都可以用这几个基本组件完成。

      eg:一个button组件


    button.component.html

      这个Button组件里面是还包裹一个label组件的。


    button.component.ts

      对外只用提供选择器,就可以使用Button了。

    3.可是为什么还要有中间的UIbuileder呢?

    是这样的,每次引选择器名是不是也很麻烦,看起来没有省力多少,

    封装的基本组件只需要对外抛出一个TYPEID,UIbuilder只要知道1是代表button组件,2代表label组件,UIbuilder将组件构建出来。


    UIBuilder.html 构建组建图

      VIEW界面需要Button给我传一个1,需要label传一个2,需要什么传对于的id就行。此时的界面和组件是完全分离的,这样构件界面的时候几乎可以没有代码就出来一个页面啦。而且下次用的时候,基类是完全不用动的。

    三.样式控制。

    也许你会觉得这样构件出来的只有最简单的页面,那么样式呢?

    的确呀,这样就是很老土的界面,那么样式要怎么实现呢?

    其实Angular 提供了很多的方法的。

    1.一张样式表,定义所有的样式。相当于boostrap一样。


    button样式定义

      都知道{{}}的定义,你只要在最外面将你需要的样式名传进来就可以啦。

    2.代码修改样式

      ElementRef ,Renderer2  有多少人知道这两个属性的。


    代码修改样式

        这种都是可以在外部修改样式的,你的基组件不需要改动。

        可能看起来费劲,但用起来好处很多,不用copy,copy了,而且你的思想也会到一个新的境界。

      其实,我用Angular有一段时间了,如果你也是,欢迎来交流。

    文章迁移至 http://www.sulishibaobei.com 欢迎访问
  • 相关阅读:
    谷歌字体fonts.googleapis.com等打开很慢解决方案
    永恒之蓝漏洞(CVE20170144)复现
    PHPFPM 远程代码执行漏洞(CVE201911043)复现
    crontab r 删除文件恢复方案
    eks使用efs dynamic provisioning 创建非root容器提示 Operation not permitted
    思科ASA 5550 防火墙 IOS恢复与升级 【Cisco ASA5550 rommon No images in / Error 15: File not found unable to boot an image】
    2.goGIN快速入门
    2.k8s的架构
    4.2 K8S超级完整安装配置
    1.k8s的前世今生
  • 原文地址:https://www.cnblogs.com/sulishibaobei/p/7413813.html
Copyright © 2020-2023  润新知