在单元测试中遇到了Vue的不常用api Vue.extend 和 vm.$mount
例如:
it('接收 offset 属性', () => {
  const div = document.createElement('div')
  document.body.appendChild(div)
  const Construtor = Vue.extend(Col)
  const vm = new Construtor({
    propsData: {
      offset: 1
    }
  }).$mount(div)
  const element = vm.$el
  expect(element.classList.contains('offset-1')).to.eq(true)
  div.remove()
  vm.$destroy
})
用Vue.extend 创建出一个新的Col实例,extend创建的实例传参需要以对象的形式
$mount挂载到div中,如果$mount()不传参数,默认挂载到body上
当mount之后,就可以用$el取到当前元素
在测试完成后,应该要删除在body中div和销毁extend创建的实例
- 本文链接:http://horry233.github.io/2020/12/07/Vue-extend-%E5%92%8Cvm/
 - 版权声明:本博客所有文章除特别声明外,均默认采用 许可协议。
 
若没有本文 Issue,您可以使用 Comment 模版新建。
GitHub Issues