如何在没有CLI / Webpack / Node的情况下制作Vue 3应用程序

2nc8po8w  于 2022-12-14  发布在  Vue.js
关注(0)|答案(3)|浏览(159)

我试图使Vue 3应用程序,但没有CLI和Webpack。
目前还没有正式的文档。CDN上有很多版本(vue.cjs.js,vue.cjs.prod.js,vue.esm-browser.js,vue.esm-bundler.js,vue.global.js,vue.runtime.global.js...)。
选择哪一个?以及如何挂载应用程序,旧的方法不起作用。有很多在线示例如何工作新的组合API,但没有如何在没有CLI / Webpack的情况下启动项目。

gkl3eglg

gkl3eglg1#

链接到Vue 3 CDN:

<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>

内文:

<div id="app">
</div>

<script type="module">
    import app from './app.js'
    const {createApp} = Vue;
    createApp(app).mount('#app');
</script>

在app.js中是简单的组件:

export default {
    name: 'Test',

    setup() {
        const title = "Hello";
        
        return {
            title
        };
    },
    
    template: `
      <div>
        <h1>{{title}}</h1>
      </div>
    `,
};

app.js可以是其他组件的容器,而不是一个组件。
我做了一个简单的Vue 3快速入门模板,这样任何人都可以看到这是如何工作的。
模板是SPA风格,包含4个示例页面,4个组件,路由和存储。它只使用CDN的Vue.js,其他一切都是手工制作的;)

  • 注意:这不是库,它只是演示代码,因此任何人都可以看到如何挂载Vue 3应用程序并在简单的场景中使用Composition API。*

在线演示:http://vue3quickstart.rf.gd/
GitHub:https://github.com/SaleCar/Vue3-QuickStart

pbpqsu0x

pbpqsu0x2#

在文档中找到:https://vuejs.org/guide/quick-start.html#without-build-tools

无构建工具

要开始使用Vue而不需要构建步骤,只需将以下代码复制到HTML文件中,然后在浏览器中打开它:

<script src="https://unpkg.com/vue@3"></script>

<div id="app">{{ message }}</div>

<script>
  Vue.createApp({
    data() {
      return {
        message: 'Hello Vue!'
      }
    }
  }).mount('#app')
</script>

上面的示例使用Vue的全局构建,其中所有API都在全局Vue变量下公开。
当全局构建工作时,为了保持一致性,我们将在文档的其余部分主要使用ES modules语法。为了在本地ES模块上使用Vue,请使用以下HTML:

<script type="importmap">
  {
    "imports": {
      "vue": "https://unpkg.com/vue@3/dist/vue.esm-browser.js"
    }
  }
</script>

<div id="app">{{ message }}</div>

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

  createApp({
    data() {
      return {
        message: 'Hello Vue!'
      }
    }
  }).mount('#app')
</script>

请注意我们如何在代码中直接从'vue'导入-这是通过<script type="importmap">块实现的,它利用了一个名为Import Maps的原生浏览器功能。导入Map目前只在基于Chrome的浏览器中可用,因此我们建议在学习过程中使用Chrome或Edge。如果您的首选浏览器还不支持导入Map,您可以使用es-module-shims对其进行多边形填充。
您可以将其他依赖项添加到导入Map中-只需确保它们指向要使用的库的ES模块版本。

不用于生产
基于导入Map的设置仅用于学习-如果您打算在生产环境中使用不带构建工具的Vue,请务必查看《生产部署指南》。

1szpjjfi

1szpjjfi3#

另外,正如Evan You推荐的,Vite(https://madewithvuejs.com/vite)是@vue/cli和webpack的一个很好的替代品。它仍然像CLI,但我认为更轻量级。速度快,支持SFC。

相关问题