webpack搭建vue脚手架

webpack搭建vue脚手架

一、创建项目基本结构
创建一个项目名为vue-webpack-cli
在项目根目录中创建src文件,在src文件下创建如下文件:
src/app.vue
    <template>
        <div id="app">
            <h>{{msg}}</h>
        </div>
    </template>

    <script>
        export default {
            data(){
                return {
                    msg: "hello vue!"
                }
            }
        }
    </script>

src/index.html

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

src/main.js

    //vue入口文件
    import Vue from 'vue'
    import App from './app.vue'

    new Vue({
        el: "#app",
        render: h=>h(App)
    })
二、在项目根目录中创建package.json文件
    npm init -y
三、在项目根目录下下载依赖
npm i vue vue-loader html-webpack-plugin --save-dev
npm i webpack webpack-cli vue-template-compiler -D
四、在项目根目录下创建webpack.config.js文件
webpack.config.js文件
    const path = require('path')
    const webpack = require("webpack")
    //引入vue-loader插件
    const VueLoaderPlugin = require('vue-loader/lib/plugin')
    //解析HTML
    const htmlWebpackPlugin = require("html-webpack-plugin")

    module.exports = {
        entry: {
            main: "./src/main.js"
        },
        module:{            //模块读取
            rules:[            //定义文件读取规则
                {
                    test:/\.vue$/,
                    loader:'vue-loader' //文件对应的读取器
                }
            ]
        },
        plugins:[  //使用插件
            new webpack.HotModuleReplacementPlugin(),
            new VueLoaderPlugin(),
            new htmlWebpackPlugin({
                template: "./src/index.html"
            })
        ],
        devServer: {
            contentBase: path.resolve(__dirname,"./src"),
            host: "localhost",
            port: 9090,
            compress: true,
            hot: true,
            open: true    //执行命令自动打开浏览器
        }
    }
五、打开package.json文件进行入下配置:

注意:在json文件里不能写注释

{
    "scripts": {
        "serve": "webpack-dev-server --mode=development",     //开发模式
        "build": "webpack --mode=production"                // 生产模式
      }
}

运行npm run serve即可在浏览器中打开localhost:9090 (注意:不行的话,把node_modules文件删除,重新下载所有依赖即可)

六、解析vue中的css,下载vue-style-loader, css-loader
    npm i vue-style-loader css-loader

在webpack.config.js中添加如下配置

{
    module: {
        rules: [
            {
                test: /\.css$/,
                use: [
                    "vue-style-loader",
                    "css-loader"
                ]
            }
        ]
    ]
}
七、解析vue中的scss,下载sass-loader, node-sass
    npm i sass-loader, node-sass

在webpack.config.js中添加如下配置

module: {
        rules: [
            //定义scss的匹配规则
            {
                test: /\.scss$/,
                use: [
                    "vue-style-loader",
                    "css-loader",
                    "sass-loader"
                ]
            }
        ]
}
八、babel配置,下载对应loader
npm install -D babel-loader@7 babel-core babel-preset-env

在webpack.config.js中添加如下配置

module: {
        rules: [
            //babel规则
            {
                test:/\.js$/,
                use: ['babel-loader'],
                include: /src/
            }
        ]
}
九、定义图片匹配规则

下载

npm i url-loader file-loader -D

在webpack.config.js中添加如下配置

module: {
        rules: [
            //babel规则
            {
                test: /\.(jpg|png|gif|svg|jpeg)/,
                use: [
                    {
                        loader: "url-loader",
                        loader: "file-loader",
                        options: {
                            limit: 1024 //限制图片大小
                        }
                    }
                ]
            }
        ]
}
十、下载webpack-merge,合并webpack.config.js
npm i webpack-merge -D

新建config文件夹,分别新建webpack.pro.js和webpack.dev.js,作为开发环境和生产环境配置文件,在文件中引入

const merge = require("webpack-merge")
const config =  require("../webpack.config.js")
module.exports =merge(config, {
	//不通用的代码块
},

每天学习一点点,一个入门级菜鸟程序员的微末追求

附上研发项目:在这里插入图片描述
完全uniapp开发的,语法融合vue,有任何问题都可以讨论。在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值