css布局两边固定中间自适应的五种方法
利用自身浮动
1 | <h2>1、利用自身浮动</h2> |
1 | /* 1、利用自身浮动 */ |
利用绝对定位
1 | <h2>2、利用绝对定位</h2> |
1 | <h2>1、利用自身浮动</h2> |
1 | /* 1、利用自身浮动 */ |
1 | <h2>2、利用绝对定位</h2> |
DOM | EVENT |
---|---|
DOM 0 | element.onclick = function(){} |
DOM 2 | element.addEventListener(‘click’,function(){},false} |
DOM 3 | element.addEventListener(‘keyup’,function(){},false} |
因为 DOM 1 一般只有设计规范没有具体实现,所以一般跳过. 其中 IE 浏览器的 addEventListener 函数对就是 attachEvent 函数
函数 | 功能 |
---|---|
preventDefault | 阻止默认行为 |
stopPropagation | 停止事件传递 |
stopImmediatePropagation | 阻止其它绑定事件执行 |
currentTarget | 当前发生事件的元素 |
target | 触发事件的节点 |
{{}}
这样的表达式Promise 对象是 JavaScript 的异步操作解决方案,为异步操作提供统一接口。它起到代理作用(proxy),充当异步操作与回调函数之间的中介,使得异步操作具备同步操作的接口。Promise 可以让异步操作写起来,就像在写同步操作的流程,而不必一层层地嵌套回调函数。
注意,本章只是 Promise 对象的简单介绍。为了避免与后续教程的重复,更完整的介绍请看《ES6 标准入门》的《Promise 对象》一章。
首先,Promise 是一个对象,也是一个构造函数。
1 | function f1(resolve, reject) { |
事实上,js 里完全依靠”原型链”(prototype chain)模式来实现继承。
上面说完原型对象。下面要扒一扒 proto、prototype、constructor。
为了实现继承,proto 会指向上一层的原型对象,而上一层的结构依然类似,那么就利用 proto 一直指向 Object 的原型对象上!Object.prototype.__proto__ = null
;表示到达最顶端。如此形成了原型链继承。
1 | import axios from "axios"; |
1 | // 添加请求拦截器 |
graph TB A(父组件 beforeCreated) --> B(父组件 created) --> C(父组件 beforeMounted) --> D(子组件 beforeCreated) --> E(子组件 created) --> F(子组件 beforeMounted) --> G(子组件 mounted) --> H(父组件 mounted)
组件的调用顺序都是先父后子,渲染完成的顺序是先子后父。
组件的销毁操作是先父后子,销毁完成的顺序是先子后父。
父 beforeCreate->父 created->父 beforeMount->子 beforeCreate->子 created->子 beforeMount- >子 mounted->父 mounted
1 | getDescribe(id) { |
1 | // 父组件中:通过路由属性中的 name 来确定匹配的路由,通过 params 来传递参数。 |