單獨html使用Vue3 || 單頁面使用Vue3

為什么要寫這個如此簡單的文章呢?

因為用的時候找了半個小時的方法才找到正確的使用方式,而且百度的時候沒有,所以寫出來,如果有人跟我一樣的話最起碼寫起來沒那么難了

不同構建版本

Vue3中不再構建UMD模塊化的方式,因為UMD會讓代碼有更多的冗余,它要支持多種模塊化的方式。Vue3中將CJS、ESModule和自執行函數的方式分別打包到了不同的文件中。在packages/vue中有Vue3的不同構建版本。

1. cjs(兩個版本都是完整版,包含編譯器)

  • vue.cjs.js
  • vue.cjs.prod.js(開發版,代碼進行了壓縮)

2. global(這四個版本都可以在瀏覽器中直接通過scripts標簽導入,導入之后會增加一個全局的Vue對象)

  • vue.global.js(完整版,包含編譯器和運行時)
  • vue.global.prod.js(完整版,包含編譯器和運行時,這是開發版本,代碼進行了壓縮)
  • vue.runtime.global.js
  • vue.runtime.global.prod.js

3. browser(四個版本都包含esm,瀏覽器的原生模塊化方式,可以直接通過<script type="module" />的方式來導入模塊)

  • vue.esm-browser.js
  • vue.esm-browser.prod.js
  • vue.runtime.esm-browser.js
  • vue.runtime.esm-browser.prod.js

4. bundler(這兩個版本沒有打包所有的代碼,只會打包使用的代碼,需要配合打包工具來使用,會讓Vue體積更?。?/strong>

  • vue.esm-bundler.js
  • bue.runtime.esm-bundler.js

接下來我使用global為例子,

上代碼
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
  <link rel="stylesheet" href="css/index.css">
  <script src="https://lib.baomitu.com/vue/3.0.2/vue.global.js"></script>
  <title>單頁面使用Vue</title>
</head>

<body>
  <div id="app">{{ state }}</div>
</body>

<script>
  const { createApp, reactive, toRefs } = Vue;
  const data = reactive({
    state: 12
  })
  const app = createApp({
    setup() {
      return {
        ...toRefs(data)
      }
    }
  });
  app.mount("#app");
</script>

</html>
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。