vue click事件传参数_浅析Vue完整版和非完整版

对不同版本的解释

完整版:同时包含编译器和运行时的版本。 编译器:用来将模板字符串编译成为 JavaScript 渲染函数的代码。 运行版:用来创建 Vue 实例、渲染并处理虚拟 DOM 等的代码。基本上就是除去编译器的其它一切。

这里列出了它们之间的差别:

33a7b3b5259514278e47a04fcb990b1f.png

两个版本对应的文件名

  • 非完整版 :vue.runtime.js
  • 完整版:vue.js

可以通过BootCDN引入

Bootstrap 中文网开源项目免费 CDN 加速服务​www.bootcdn.cn
c4f7c9995a3dedde4080a472f0fb5f7a.png

c5438419301ec9015e7e9c356b7cc630.png

版本区别

875855f80c9fc58c5bb6efb3cb5360fa.png

最佳实践:总是使用非完整版,然后配合vue-loader和vue文件

  • 非完整版:没有compiler,不能将HTML变成节点。webpack通过vue-loader(在yarn bulid里设置)将html变成('div',this.n)
  • 完整版:可以从HTML或template直接得到试图,有compiler编译器可以将含有占位符{{}}或者条件语句变成真实的DOM节点,代码体积占30%.
思路:
1.保证用户体验,用户下载的JS文件体积更小,但只支持h函数
2.保证开发体验,开发者可直接在vue文件里写HTML标签,而不写h函数
3.复杂的让loader做,vue-loader 把vue文件里的HTML转为h函数

template 和 render的使用

  • vue完整版 template的使用方法

直接写在html上或者JS上

<template>
  <div id="app">
        {{n}}
          <button @click="add">+1</button>
  </div>
</template>
  • Vue非完整版 render的使用方法

rener函数接收一个参数h,这个参数是vue传的,用这个参数去创建实例

render(h){
return h('div',[this.n,h('{on:{click:this.add}','+1'}]
}

如何用codesandbox写Vue代码

用codesandbox来创建一个Vue项目

Online IDE for Rapid Web Development​codesandbox.io
a42d2ad947770f10f1be1f2ad84637a7.png

1.点击 create sandbox

8d6d65355fbfd1ce49ee3147a3a3b343.png

2.选择 Vue

7f7dbbcf8b38dc38628930272ca3da1d.png

3.创建Vue后,就会自动帮你生成所需要的文件了

0a43ffb32b891da0624f1d8cc8f7c6df.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值