vue 同时调两个方法_Vue 两个版本的区别和使用方法

1.两个版本对应的文件名:

通过bootCDN引入,完整版(vue.js),非完整版(vue.runtime.js)。

2.两个版本的区别和使用方法:

一、特点

完整版有compiler(编译器用来将模板字符串编译成为 JavaScript 渲染函数的代码),这导致完整版体积更大。

非完整版没有compiler,所以体积更小,要比完整版体积小大概30%。

二、视图

完整版的视图是写在HTML里或template选项的,由于有 compiler(编译器)的存在,完整版运行时,用来创建 Vue 实例、渲染并处理虚拟 DOM 等的代码。基本上就是除去编译器的其它一切。

非完整版的视图是写在render里的,是用h函数来创建标签。非完整版运行时,当使用 vue-loader 或 vueify 的时候,*.vue 文件内部的模板会在构建时预编译成 JavaScript。我们在最终打好的包里实际上是不需要编译器的,所以只用运行时版本即可。

  • template版, 引入vue.js
new window.Vue({
  el: "#app",
  template: `
    <div @click="add">{{n}} <button>+1</button></div>
  `,
  data: {
    n: 0
  },
  methods:{
    add(){
      this.n += 1
    }
  }
})
  • render版, 引入vue.runtime.js
new window.Vue({
  el: "#app",
  render(h){
    return h("div", [this.n, h("button", {on:{click: this.add}}, "+1")])
  },
  data: {
    n: 0
  },
  methods:{
    add(){
      this.n += 1
    }
  }
})

三、配置

从 webpack 引入,完整版需要配置 alias,非完整版 是默认配置;

从 @vue/cli 引入,完整版需要额外配置,非完整版 是默认配置。

总结:

虽然有两个版本,但现在前端基本是不会用完整版的,平时使用默认都是代码体积小的非完整版,因为编译器的工作交给vue-loader去做了。

选择非完整版的理由如下:

  1. 保证用户体验,用户下载的JS文件体积更小,但只支持h函数。
  2. 保证开发体验,开发者可直接在vue文件里写HTML标签,而不写 h函数。
  3. 简化操作流程,vue-loader 会把vue文件里的HTML转为h函数,这样我们就不需要写太多麻烦的h函数就可做到和完整版一样的事,还更节约文件大小,提升用户体验。

3.如何用 http://codesandbox.io 写 Vue 代码:

  • 第1步:打开http://codesandbox.io , 不需要登录(登录之后只能创建50个项目), 然后创建一个新的vue项目即可

8ca5e33344c0c83d3ca8c59b3d72a5ca.png
  • 第2步:选择Vue项目

9ae6f030041ca4dd722dd4371fb05373.png
  • 第三步:进行对vue的相关操作

70c0c9cff26b8dbf087bc204ef2e7cef.png
  • 第四步:点击File下的Export to ZIP ,导出到你想要存储的文件夹。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值