使用webpack从零搭建vue2.0项目

111 阅读1分钟

我正在参加「掘金·启航计划」

面试中常被问到是否了解webpack,今天就来研究一下怎么用webpack来构建vue项目

1.初始化一个webpacknpm init -y 就会生成这样一个package.json文件

image.png

2.再就是安装webpack相关的配置文件,搭建运行环境(这里可以用 npm 也可以用 yarn)

①:安装webpack yarn add webpack@4.44.2

②:安装脚手架yarn add webpack-cli@3.3.12

③:安装webpack启动开发服务器yarn add webpack-dev-server@3.11.2

3.引入vue的cdn,这里用的是vue2.0的版本https://cdn.jsdelivr.net/npm/vue@2.6.2/dist/vue.js

4.下面就是安装vue相关的loader因为Vue也需要提供配套工具来开发单文件组件

image.png

yarn add vue-loader vue-template-compiler html-webpack-plugin@4.5.0

5.写webpack配置文件

// 引入相关loader
const { resolve } = require('path')
const HTMLWbpackPlugin = require('html-webpack-plugin')
const VueLoaderPlugin = require('vue-loader/lib/plugin')
// 在node下运行要遵循commonJs的规范
module.exports = {
  // 开发环境
  mode: 'development',
  // 入口文件
  entry: './src/main.js',
  // 输出
  output: {
    path: resolve(__dirname, 'dist'),
    filename:'main.js'
  },
  // 处理外部文件,我们这里是引入的cdn
  externals: {
    'vue':'Vue'
  },
  devtool: 'source-map',
  // 配置loader
  module: {
    rules: [
      {
        test: /\.vue$/,
        loader:'vue-loader'
      }
    ]
  },
  // 配置plugin
  plugins: [
    new VueLoaderPlugin(),
    new HTMLWbpackPlugin({
      template:resolve(__dirname,'public/index.html')
    })
  ]
    

}

这里要注意vue-loader的版本,踩过坑,版本高了容易报各种错误

image.png

然后运行就欧克了~

image.png

  1. 最后就是配置main.js
import App from './App.vue';

new Vue({
  render:h=>h(App)
}).$mount('#app')