1.绑定html

  在ts里面自定义一个html变量

  html = '<a> 这是html变量 </a> ';

  在html打印出来

直接打印:{{html}}
<br />
绑定html:<span [innerHtml]='html'></span>

2.ng

  

3.管道

  主要用于格式化数据。

<a>{{'Abc'| uppercase}}</a>
<hr>
<a>{{'Abc'| lowercase}}</a>
<hr>
<a>{{today | date:'yyyy-MM-dd hh:mm:ss'}}</a>

  

  更多管道:http://bbs.itying.com/topic/5bf519657e9f5911d41f2a34

4.事件

  click  点击(有延迟)

  tap 点击(无延迟)

  keydown  键盘按下

  keyup  键盘弹起

  change  checkbox状态改变事件

  ngModelChange   input输入数据改变

  press 长按

  pan 滑动事件,滑动触发多次

  swipe  滑动事件,滑动触发一次

  rotate  旋转事件(ionic3的,angular没试过)

  pinch   捏合事件 (ionic3的,angular没试过)

touch四件套

  touchstart  手指碰到屏幕触发

  touchmove  手指在屏幕移动多次触发

  touchend  手指离开触发

  touchcancel  滑动中断触发

  ts:

  keyup(e) {
console.log(e.target.value); // 显示目标值(输入框内的值)
console.log(e.key); // 按键,回车键为Enter
console.log(e.keyCode); // 按键code,回车键为13
}

  html:

<input type="text" (keyup)="keyup($event)" />

  上面e.target是指定到那个dom节点,也就是这个text,所以可以在后台对这个节点进行操作,如

    e.target.style.color = 'blue';

5.双向数据绑定  MVVM

  MVVM也就是module view module view,再这里是模块影响视图,视图影响模块,也就是双向数据绑定,例如

<input type="text" [(ngModel)]="title" />

  需要在app.module.ts引入

import { FormsModule } from '@angular/forms';

  imports: [
FormsModule
]

6.获取dom

  html:

<app-header #header></app-header>

<div id='myBox'>原生获取dom</div>

<div #myBox>ViewChild获取dom</div>

  ts:

import { Component, OnInit, ViewChild, AfterViewInit } from '@angular/core';

@Component({
selector: 'app-form',
templateUrl: './form.component.html',
styleUrls: ['./form.component.scss']
})
export class FormComponent implements OnInit, AfterViewInit { @ViewChild('myBox') myBox: any;
@ViewChild('header') header: any;
constructor() { }
ngOnInit() {
// 组件和指令初始化完成 并不是真正的dom加载完成
}
ngAfterViewInit() {
// 应该在这个生命周期函数里面获取dom,调用这个函数需要先import
// 原生获取dom,并改变样式
console.log(document.getElementById('myBox'));
document.getElementById('myBox').style.background = 'red';
// ViewChild获取dom,并改变样式
console.log(this.myBox.nativeElement);
this.myBox.nativeElement.style.background = 'blue';
// ViewChild获取子组件(可以把子组件看成一个dom),并调用子组件的方法
console.log(this.header);
this.header.run();
}
}

  效果图:

  

7.侧边框

  html

<div class="content">
内容区域
<button ion-button (click)="show()">弹出侧边栏</button>
</div> <aside #aside>
侧边栏
</aside>

  scss

aside{
width: 100px;
height: %;
position: absolute;
right: 0px;
top: 0px;
background: azure;
transform: translate(%,);
transition: all 1s;
}

  ts

  @ViewChild('aside') aside: any;
show() {
this.aside.nativeElement.style.transform = 'translate(0, 0)';
}

  效果图:

  

Angular7的更多相关文章

  1. Angular7上手体验

    准备工具 Node.js Angular requires Node.js version 8.x or 10.x. 查看当前你的node版本可以在CMD中输入 node -v npm -v 开发工具 ...

  2. Angular7.1.4+Typescript3.1框架学习(一)

    起因:学习ionic4之前先学习下angular+ts 以win10为开发平台:当前最新版本为angular7;根据官网资料做如下总结: 1. angular安装 前提:Node.js 的 8.x 或 ...

  3. 【前端开发工具】WijmoJS 2018 v3 正式发布,全面支持Angular7

    WijmoJS(前端开发工具包)2018年度第三个大版本已经正式发布,本次更新除了全面支持Angular7之外,还允许用户使用Web Workers在前端更高效地导出PDF.智能的分组表头属性.全新的 ...

  4. Angular7教程-01-Angular开发环境配置

    本教程基于angular7(2018-11-04) 1. 安装node.js 下载地址: http://nodejs.cn/download/ 下载对应自己操作系统的版本安装即可. 2.安装 angu ...

  5. Angular7教程-02-Angular项目目录及基本文件说明

    本教程基于Angular7,更新时间2018-11-05. 1. 项目根目录如下: e2e文件夹:end to end,测试目录,主要用于集成测试. node_modules:项目的模块依赖目录. s ...

  6. 在angular7中创建组件/自定义指令/管道

    在angular7中创建组件/自定义指令/管道 组件 使用命令创建组件 创建组件的命令:ng generate component 组件名 生成的组件组成: 组件名.html .组件名.ts.组件名. ...

  7. ASP.NET Core Web API + Angular 仿B站(一) 目的分析以及创建 WebAPI + Angular7 项目

    前言: 本系列文章主要为对所学 Angular 框架的一次微小的实践,对 b站页面作简单的模仿. 本系列文章主要参考资料: 微软文档: https://docs.microsoft.com/zh-cn ...

  8. Angular7环境搭建报错

    昨天写的2019年Angular7——安装搭建路由方法不太正统,今天又去翻了下angular官网,跟着上面的环境搭建与部署走了一遍 从安装@angular/cli命令行工具开始 本篇主要记录下搭建过程 ...

  9. 2019年Angular7——安装搭建路由

    Angular 中文官方:https://www.angular.cn/ 为什么要看Angular?我也不知道,因为公司有个Angular的项目要维护.听说Angular的版本已经到7了.以前没怎么玩 ...

  10. angular6 升级到 angular7+ 最新Ng-zorro

    angular7 出来有一段时间了,然后我们项目一直用的是angular6, 看到一直再用的Ng-Zorro 更新版本了,然后就觉得把目前的项目也升级一下把. 目前我本地cli版本是6.0.8我要把他 ...

随机推荐

  1. linux目录2

    19.linux注释多行 20.防火墙 21.创建逻辑卷 22.两台主机,ssh端口不同,如何拷贝文件    

  2. 将docker镜像上传到docker hub

  3. SkylineGlobe 7.0.1 & 7.0.2版本Web开发 如何正确使用三维地图控件和工程树控件

    Skyline TerraExplorer Pro目前正式发布的7.0.1&7.0.2版本,还只是64位的版本, 在Web开发的时候,如何在页面中正确嵌入三维地图控件,让一些小伙伴凌乱了. 下 ...

  4. P1577 切绳子

    P1577 切绳子 题目描述 有N条绳子,它们的长度分别为Li.如果从它们中切割出K条长度相同的 绳子,这K条绳子每条最长能有多长?答案保留到小数点后2位. 输入输出格式 输入格式: 第一行两个整数N ...

  5. python使用redis

    版本: python 3.5 redis 3.0.1(redis的安装 pip install redis) 1.连接 import redis r = redis.Redis(host='192.1 ...

  6. Python Revisited Day 05(模块)

    目录 5.1 模块与包 5.1.1 包 5.2 Python 标准库概览 5.2.1 字符串处理 io.StringIO 类 5.2.3 命令行设计 5.2.4 数学与数字 5.2.5 时间与日期 5 ...

  7. 周末学习笔记——day01(函数,函数对象,嵌套调用,名称空间,作用域,闭包,装饰器)

    一,复习 字符编码 文件头:py2—ASCII,py3—UTF-8 三种字符串:u' ' b ' ' r ' ' u' ' .endcode(' utf-8 ') b' '.deconde(' utf ...

  8. JUC (java.util.concurrent)

    1.什么是线程?什么是进程? 2.多线程的状态? public enum State { //6种状态 NEW, RUNNABLE, //可运行 BLOCKED, //阻塞 WAITING, //等待 ...

  9. MySQL系列:数据类型、运算符及函数(5)

    1. 数据类型 MySQL支持多种数据类型,主要有数值类型.日期/时间类型和字符串类型. (1)数值类型:包括整数类型:TINYINT.SMALLINT.MEDIUMINT.INT.BIGINT,   ...

  10. XCTF体验题库 : ReverseMe-120

    ida打开看一下: sub_401000函数是能否输出“correct”的关键 点进去看一下: 可以看到将输入的字符串赋予了byte_414E40这个数组的值,看一下这个数组: 应该是base64的解 ...