程序猿日常--2019/2/27

207 阅读1分钟
  • 通过transform中的translate,scale,rotate,skew这些方法来控制元素的平移,缩放,旋转,斜切。
  • 在css中矩阵的原始值为
transform: matrix(a,b,c,d,e,f)

改写成数学里的矩阵就是

[a c e
 b d f
 0 0 1]

平移只与e和f有关,e是x轴方向,f是y轴方向。缩放只与a和d有有关,改变a和d系数就可以放大缩小。

  • 旋转复杂一点
transform: matrix(cos0,sin0,-sin0,cos0,0,0)
  • ref用来给子组件或者元素注册引用信息,引用信息会注册在父组件的$refs对象上,如果在普通的DOM元素上使用
    引用指向的就是DOM元素,如果用在子组件上,引用就指向组件实例。
  • Vue实现响应式并不是数据发生变化之后DOM立即变化,而是按照一定的策略进行DOM更新。
  • 异步执行的运行机制:

(1)所有同步任务都在主线程上执行,形成一个执行栈
(2)主线程之外还有一个任务队列(task queue),只要异步任务有了运行结果,就在“任务队列”中放置一个事件。
(3)一旦执行栈中的所有同步任务执行完毕,系统就会读取“任务队列”,看看里面有那些事件,那些异步任务结束
等待状态,进入执行栈,开始执行。
(4)主线程不断重复上面3个步骤。

  • vue在修改数据后不会立即更新视图,而是等同一事件循环中的所以数据变化完之后,再统一进行视图更新。
    知乎上的例子:
vm.message = "change";
console.log(vm.$el.textContent) //并不会得到'change'  
Vue.nextTick(function(){
    console.log(vm.$el.textContent)
})
  • vscode快捷键,ctrl+y返回上一步