发表于: 2021-06-16 22:04:40
0 1874
今天完成的事情:列表部件绑定基本搞完了;JS基础知识
明天计划的事情:上传图片进行;
遇到的问题:日期部件还没有搞出来,没搞明白;
收获:
指令*ngFor、*ngIf、:
ngIf与ngFor在angular里被称为是结构型指令.所谓结构型指令,就是它能够塑造或重塑DOM的结构. 就是在渲染的时候它能够帮你增加,删除,维护这些元素块。
*ngIf:
*ngIf 就是将元素从DOM树移除,或者是不加载.:
当然使用 *ngIf ,就会有else if 的使用操作:
*ngFor:(就是循环)
循环数组.使用频率过大. 下面介绍一个ngFor与管道的混合使用.主要解决的问题是,我不想修改原数组,只想改变呈现的方式:
下面是一串数组:
现在我只想展示郑州 , 不想展示北京.:
上面是老套方法,更改了array . 我想在其他列表依然使用.那就会出问题,改起来繁琐。
现在就用pipe管道来完成:
管道:
JS DOM:
DOM
DOM 是 JavaScript 操作网页的接口,全称为“文档对象模型”(Document Object Model)。它的作用是将网页转为一个 JavaScript 对象,从而可以用脚本进行各种操作(比如增删内容)。
浏览器会根据 DOM 模型,将结构化文档(比如 HTML 和 XML)解析成一系列的节点,再由这些节点组成一个树状结构(DOM Tree)。所有的节点和最终的树状结构,都有规范的对外接口。
DOM 只是一个接口规范,可以用各种语言实现。所以严格地说,DOM 不是 JavaScript 语法的一部分,但是 DOM 操作是 JavaScript 最常见的任务,离开了 DOM,JavaScript 就无法控制网页。另一方面,JavaScript 也是最常用于 DOM 操作的语言。
节点
DOM 的最小组成单位叫做节点(node)。 文档的树形结构(DOM 树),就是由各种不同类型的节点组成。每个节点可以看作是文档树的一片叶子。
节点的类型有七种:
Document:整个文档树的顶层节点DocumentType:doctype标签(比如<!DOCTYPE html>)
Element:网页的各种HTML标签(比如<body>、<a>等)
Attr:网页元素的属性(比如class="right")
Text:标签之间或标签包含的文本
Comment:注释
DocumentFragment:文档的片段
浏览器提供一个原生的节点对象Node,上面这七种节点都继承了Node,因此具有一些共同的属性和方法。
节点树
一个文档的所有节点,按照所在的层级,可以抽象成一种树状结构。这种树状结构就是 DOM 树。它有一个顶层节点,下一层都是顶层节点的子节点,然后子节点又有自己的子节点,就这样层层衍生出一个金字塔结构,又像一棵树。浏览器原生提供document节点,代表整个文档。
document // 整个文档树
文档的第一层有两个节点,第一个是文档类型节点(<!doctype html>),第二个是 HTML 网页的顶层容器标签<html>。<html>构成了树结构的根节点(root node),其他 HTML 标签节点都是它的下级节点。
除了根节点,其他节点都有三种层级关系。
父节点关系(parentNode):直接的那个上级节点
子节点关系(childNodes):直接的下级节点
同级节点关系(sibling):拥有同一个父节点的节点
DOM 提供操作接口,用来获取这三种关系的节点。比如,子节点接口包括firstChild(第一个子节点)和lastChild(最后一个子节点)等属性,同级节点接口包括nextSibling(紧邻在后的那个同级节点)和previousSibling(紧邻在前的那个同级节点)属性。
----------------------------------------
评论