1 事件处理

1.1   鼠标移入事件触发

(mouseenter)=" "

              eg:   (mouseenter)="isCollapsed=false"        通过给isCollapsed赋值来实现隐藏显示

1.2   鼠标移出事件触发

         (mouseleave)=" "
 
               eg:  (mouseleave)="isCollapsed=true"          通过给isCollapsed赋值来实现隐藏显示
       
   1.3  点击事件触发
 
          (click)=" "
 
              eg: (click)="toggleCollapsed()"                     点击事件,执行一个函数
 
2  结构型指令
 
    2.1  angular 内置指令 
 
           2.1.1  元素显示隐藏指令 (布尔值,为true时显示,为false时隐藏)
      

                *ngIf=" "
 
                     eg:  *ngIf="leveldisplay"             leveldisplay=true 时显示  
  
            2.1.2  元素迭代指令  
    
                *ngFor=""
 
                      eg: *ngFor="let hero of heroes"      heroes 是要迭代的数据 , hero 为迭代的属性,可以在它身上取到属性值  如 hero.id
 
      2.2 angular  自定义指令
 
          2.2.1  创建自定义组件
 
                 引入创建指令需要依赖的组件库
                 import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';
                 Directive       指令装饰器
                TemplateRef      生成的 <ng-template> 元素中创建一个内嵌的视图,并把这个视图插入到一个视图容器中,可以使用TemplateRef取得 <ng-template> 的内容
                ViewContainerRef     通过ViewContainerRef来访问这个视图容器。
 
                 在指令装饰器中,选择在html中创建的指令属性名字, 这个方括号定义出了一个 CSS 属性选择器
                 @Directive({ selector: '[appUnless]'})
 
                 都注入到指令的构造函数中,作为该类的私有属性。
      constructor(  private templateRef: TemplateRef<any>, private viewContainer: ViewContainerRef) { }
               
                 自定义指令的执行代码
 
                 声明一个控制属性
                  private hasView = false;
 
                  设置自定义的属性appUnless 的值的类型为布尔值
                 @Input()   set appUnless(condition: boolean) {
                      判断  布尔值不为真,且 声明的变量值不为真
                      if (!condition && !this.hasView) {
                             在视图中创建一个 内嵌的视图,并把这个视图插入到一个视图容器
                             this.viewContainer.createEmbeddedView(this.templateRef);
                             让隐藏的视图显示出来
                             this.hasView = true;
                      } else if (condition && this.hasView) {
                            把视图容器中创建的内嵌视图删除
                            this.viewContainer.clear();
                           让显示的视图隐藏起来
                            this.hasView = false;
                      }
                }
                
      
 

angular6 开发实践基础知识汇总的更多相关文章

  1. 沉淀,再出发:Java基础知识汇总

    沉淀,再出发:Java基础知识汇总 一.前言 不管走得多远,基础知识是最重要的,这些知识就是建造一座座高楼大厦的基石和钢筋水泥.对于Java这门包含了编程方方面面的语言,有着太多的基础知识了,从最初的 ...

  2. jquery基础知识汇总

    jquery基础知识汇总 一.简介 定义 jQuery创始人是美国John Resig,是优秀的Javascript框架: jQuery是一个轻量级.快速简洁的javaScript库.源码戳这 jQu ...

  3. Golang 入门系列(三)Go语言基础知识汇总

    前面已经了 Go 环境的配置和初学Go时,容易遇到的坑,大家可以请查看前面的文章 https://www.cnblogs.com/zhangweizhong/category/1275863.html ...

  4. C#基础知识汇总(不断更新中)

    ------------------------------目录---------------------------- 1.隐式类型2.匿名类型3.自动属性4.初始化器5.委托6.泛型7.泛型委托8 ...

  5. ArcGIS API for JavaScript开发初探——基础知识

    1.前言 在ArcGIS Web API开发体系中一共有四大类,分别为: ArcGIS API for Flex ArcGIS API for JavaScript ArcGIS API for RE ...

  6. Oracle基础知识汇总一

    Oracle基础知识 以下内容为本人的学习笔记,如需要转载,请声明原文链接   https://www.cnblogs.com/lyh1024/p/16720759.html oracle工具: SQ ...

  7. Java开发培训基础知识解析之反射机制

    Java是老牌编程语言,是当前应用最广泛的编程语言之一.想要学习Java你就一定要掌握Java基础知识,而反射对于初学Java的人来说绝对是非常重要的知识点.什么是反射?如何理解反射机制?如何使用反射 ...

  8. 【千纸诗书】—— PHP/MySQL二手书网站后台开发之基础知识

    前言: 在具体回顾每一个功能的实现前,还是有必要先温习一些项目涉及到的PHP.MySQL[语法基础].项目github地址:https://github.com/66Web/php_book_stor ...

  9. Spring基础知识汇总 Java开发必看

    Spring简介 Spring框架由Rod Johnson开发,2004年发布了Spring框架的第一版.Spring是一个从实际开发中抽取出来的框架,因此它完成了大量开发中的通用步骤,留给开发者的仅 ...

随机推荐

  1. pyCharm-激活码(2018)

    最近使用pycharm的时候,用的是很久以前的激活地址 于是网上到处寻找最新地址,然而 网上之前分享的激活地址已经多半过期, 于是找朋友帮忙,终于找到一个可用的了 1.选择 Activate new ...

  2. Lumen框架使用Redis与框架Cache压测比较

    使用命令 ab -c 20000 -n 100000 'http://127.0.0.1:9050/v1/api.store.xxx'进行压测,并同时进行了交叉测试,结果如下: 高并发情况下数据目前没 ...

  3. 决策树(ID3、C4.5、CART)

    ID3决策树 ID3决策树分类的根据是样本集分类前后的信息增益. 假设我们有一个样本集,里面每个样本都有自己的分类结果. 而信息熵可以理解为:“样本集中分类结果的平均不确定性”,俗称信息的纯度. 即熵 ...

  4. jenkins 关闭和重启的实现

    jerkins自带的重启手段重启过程缓慢,在jenkins的操作过程中可使用以下操作: 关闭Jenkins 只需要在访问jenkins服务器的网址url地址后加上exit.例如我jenkins的地址h ...

  5. 解决Python图片处理模块pillow使用中出现的问题

    最近爬一个电影票房的网站(url:http://58921.com/alltime),上面总票房里面其实是一张图片,那么我需要把图片识别成文字,来获取票房数据.   我头脑里第一想到的解决方案就是要用 ...

  6. 域名排序 sort uniq awk

    [root@web01 ~]# sort [-fbMnrtuk] [file or stdin] 选项与参数:-f :忽略大小写的差异,例如 A 与 a 视为编码相同:-b :忽略最前面的空格符部分: ...

  7. python中下划线的特殊用法

    python下划线用法总结: ① _XXX 不能用于“ from  model import * ”的导入: ②__XXX__ 系统定义名字: ③__XXX 类中的私有变量名. 总结:避免随意用下划线 ...

  8. spring中ApplicationListener的用法

    1.实现ApplicationListener接口,并重写onApplicationEvent方法 @Component public class RSAKeyInitListener impleme ...

  9. Centos7搭建docker仓库

    一:安装启动registry 1.1:环境准备 yum install -y python-devel libevent-devel python-pip gcc xz-devel pip insta ...

  10. ecplise包的层次结构选择

    ecplise包的层次结构选择 平坦方式: 分层方式: