如何在没有 CLI / Webpack / Node 的情况下制作 Vue 3 应用程序
How to make Vue 3 application without CLI / Webpack / Node
我正在尝试制作 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...).
选哪个?以及如何挂载应用程序,旧方法不起作用。有很多在线示例如何工作 new Composition API 但是 none 如何在没有 CLI / Webpack 的情况下启动项目。
Link 到 Vue 3 CDN:
<script src="https://cdn.jsdelivr.net/npm/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 QuickStart 模板,因此任何人都可以看到它是如何工作的。
模板为类SPA风格,包含4个示例页面、4个组件、路由和存储。它仅使用来自 CDN 的 Vue.js,其他一切都是手工制作的 ;)
注意:这不是库,它只是演示代码,因此任何人都可以看到如何在简单的场景中安装 Vue 3 应用程序和使用 Composition API。
在线演示:http://vue3quickstart.rf.gd/
GitHub: https://github.com/SaleCar/Vue3-QuickStart
此外,正如Evan You 所推荐的,Vite(https://madewithvuejs.com/vite) 是@vue/cli 和webpack 的一个很好的替代品。它仍然像 CLI,但我认为更轻量级。速度快,支持SFC。
在文档中找到: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. Import maps are currently only available in Chromium-based browsers, so we recommend using Chrome or Edge during the learning process. If your preferred browser does not support import maps yet, you can polyfill it with es-module-shims.[=19= 的本机浏览器功能]
您可以将其他依赖项的条目添加到导入映射 - 只需确保它们指向您打算使用的库的 ES 模块版本。
不适用于生产
import-maps-based 设置仅供学习 - 如果您打算在生产中使用没有构建工具的 Vue,请务必查看 Production Deployment Guide.
我正在尝试制作 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...).
选哪个?以及如何挂载应用程序,旧方法不起作用。有很多在线示例如何工作 new Composition API 但是 none 如何在没有 CLI / Webpack 的情况下启动项目。
Link 到 Vue 3 CDN:
<script src="https://cdn.jsdelivr.net/npm/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 QuickStart 模板,因此任何人都可以看到它是如何工作的。
模板为类SPA风格,包含4个示例页面、4个组件、路由和存储。它仅使用来自 CDN 的 Vue.js,其他一切都是手工制作的 ;)
注意:这不是库,它只是演示代码,因此任何人都可以看到如何在简单的场景中安装 Vue 3 应用程序和使用 Composition API。
在线演示:http://vue3quickstart.rf.gd/
GitHub: https://github.com/SaleCar/Vue3-QuickStart
此外,正如Evan You 所推荐的,Vite(https://madewithvuejs.com/vite) 是@vue/cli 和webpack 的一个很好的替代品。它仍然像 CLI,但我认为更轻量级。速度快,支持SFC。
在文档中找到: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. Import maps are currently only available in Chromium-based browsers, so we recommend using Chrome or Edge during the learning process. If your preferred browser does not support import maps yet, you can polyfill it with es-module-shims.[=19= 的本机浏览器功能]
您可以将其他依赖项的条目添加到导入映射 - 只需确保它们指向您打算使用的库的 ES 模块版本。
不适用于生产
import-maps-based 设置仅供学习 - 如果您打算在生产中使用没有构建工具的 Vue,请务必查看 Production Deployment Guide.