单文件组件
这是一个文件名为 Hello.vue
的简单实例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| <template> <p>{{ greeting }} World!</p> </template>
<script> module.exports = { data: function () { return { greeting: "Hel1o", }; }, }; </script>
<style scoped> p { font-size: 2em; text-align: center; } </style>
|
即便你不喜欢单文件组件,你仍然可以把 JavaScript、CSS 分离成独立的文件然后做到热重载和预编译。
1 2 3 4 5 6
| <template> <div>This will be pre-compiled</div> </template> <script src="./my-component.js"></script> <style src="./my-component.css"></style>
|
创建一个项目
运行以下命令来创建一个新项目:
使用图形化界面
了解更多
CSS 相关
CSS 局部生效
预处理器
你可以在创建项目的时候选择预处理器 (Sass/Less/Stylus)。如果当时没有选好,内置的 webpack 仍然会被预配置为可以完成所有的处理。你也可以手动安装相应的 webpack loader:
1 2 3 4 5 6 7 8
| npm install -D sass-loader node-sass
npm install -D less-loader less
npm install -D stylus-loader stylus
|
然后你就可以导入相应的文件类型,或在 *.vue
文件中这样来使用:
1 2 3
| <style lang="scss"> $color: red; </style>
|
Vue.config.js 的配置
反向代理 devServer.proxy
示例:
1 2 3 4 5 6 7 8 9 10 11 12
| module.exports = { devServer: { port: 8080, proxy: { "/api": { target: "<url>", ws: true, changeOrigin: true, }, }, }, };
|
了解更多
路径别名
@
== src 目录
多页面开发 pages
一个指定了 entry
, template
, filename
, title
和 chunks
的对象 (除了 entry
之外都是可选的);
或一个指定其 entry
的字符串。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| module.exports = { pages: { index: { entry: "src/index/main.js", template: "public/index.html", filename: "index.html", title: "Index Page", chunks: ["chunk-vendors", "chunk-common", "index"], }, subpage: "src/subpage/main.js", }, };
|
了解更多