我的 vuejs 学习 - 基础环境

我在六七年前用过vuejs 做公司的网站系统,后面就一直没有再用过了. 最近在学用golang的过程中也想把这块的知识点再学起来, 毕竟jQuery 已经过时了…

就完全当一个新手来学习它吧

在网上搜索一些教程的时候, 实例语法 有好几种写法, 最新学习 那当然是要学最新版了, 2.x 的版本就不关注了, 为了降低学习曲线不过多的引入复杂的概念, 选择的还是 直接用cdn的形式 不使用构建工具来搞, 构建工具环境也挺复杂的 node 一些包都不是几个小时就能上手的… 那些以后再说吧

先整理一些常用的 概念:

CDN

  • https://cdn.jsdelivr.net.cn/npm/vue/ 目录 可以选版本
  • https://cdn.jsdelivr.net/npm/vue@3.5.25 81 kb
  • https://cdn.jsdelivr.net/npm/vue@2.7.16 40.4kb

这是快速引用的方式 但是它会造成一个 HTTP 302 跳转, 所以在引用的时候 还是得写全路径:

  • https://unpkg.com/vue@3.5.25/dist/vue.esm-browser.js 129 kb
  • https://unpkg.com/vue@3.5.25/dist/vue.esm-browser.prod.js 61.1kb
  • https://cdn.jsdelivr.net.cn/npm/vue@3.5.25/dist/vue.global.js
  • https://cdn.jsdelivr.net.cn/npm/vue@3.5.25/dist/vue.global.prod.js

版本 2 和 3 的区别

有一个极为明显的地方, 就是 不能 new Vue 对象

// 2 的写法
new Vue({
  render: h => h(App)
}).$mount('#app')

// 3 的写法
import { createApp } from 'vue'

const app = createApp({
  data() {
    return {
      count: 0
    }
  }
})

esm, global 的区别

浏览器默认不支持esm的 import/export 语法,可以显式声明 <script type="module">.

<!DOCTYPE html>
<html>
  <head>
    <title>示例</title>
    <script type="importmap">
  {
    "imports": {
      "vue": "https://unpkg.com/vue@3.5.25/dist/vue.esm-browser.prod.js"
    }
  }
</script>

  </head>
  <body>
    <div id="app">
  <button @click="count++">{{ count }}</button>
</div>

    <script type="module">
      import { createApp } from 'vue'

		const app = createApp({
		  data() {
		    return {
		      count: 0
		    }
		  }
		})
        app.mount('#app')
    </script>
  </body>
</html>

global 为浏览器直接使用的构建版本,包含核心功能和常用插件,可以用全局变量 Vue来调用,像jquery 一样使用, 如下:

<!DOCTYPE html>
<html>
  <head>
    <title>示例</title>
    <script src="https://cdn.jsdelivr.net.cn/npm/vue@3.5.25/dist/vue.global.prod.js">
</script>

  </head>
  <body>
    <div id="app">
  <button @click="count++">{{ count }}</button>
</div>
    <script>
const app = Vue.createApp({
  data() {
    return {
      count: 0
    }
  }
})

app.mount('#app')
    </script>
  </body>
</html>

在这里插入图片描述

vue 打包里 还有一个 runtime 版本 比如:

https://cdn.jsdelivr.net.cn/npm/vue@3.5.25/dist/vue.runtime.global.prod.js
这是阉割版, 不包含编译器的版本, 不能用模板功能, 反正压缩后的版本差别就几十k, 直接忽略它

我会使用 global 的模式 来学习, 这种学习难度 最小

那样式库, 也选了个轻量级的 pure css , 纯CSS的库

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值