1. 程式人生 > >從零構建vue+webpack (一)

從零構建vue+webpack (一)

fonts pan ade .html 信息 dex 報錯 9.png route

寫在前面:

  給自己看,日常寫業務有點兒繁瑣,嘗試著用vue+webpack 從零開始構建一個項目!

1.新建項目文件夾

  技術分享圖片

運行命令 npm init (一路回車或者-y)

  技術分享圖片

2.打開項目,新建src 文件夾,新建main.js,寫一句js語句

  技術分享圖片

3.安裝webpack

  cnpm install webpack webpack-cli webpack-dev-server --save-dev (加了淘寶鏡像)

  package.json文件內添加

   技術分享圖片

  控制臺運行 npm run dev 會打開本地的一個服務(webpack默認的,報錯信息先暫時不用管)

  技術分享圖片

  技術分享圖片

  證明webpack 安裝成功

4.簡單配置webpack

  在項目文件夾內新建 webpack.config.js 簡單配置如下圖

  技術分享圖片

  打開package.json 添加自動打開瀏覽器配置

  技術分享圖片

  此時重新 npm run dev 會立即打開新窗口

  技術分享圖片

  添加build命令

  技術分享圖片

  運行 npm run build 看看是否成功

  技術分享圖片

5.配置vue

  先安裝部分依賴 cnpm install --save-dev file-loader stylus stylus-loader style-loader url-loader @babel/core@^7.0.0 babel-loader css-loader@* vue-loader vue-template-compiler vue vue-router vuex 

 

  package文件夾

  技術分享圖片

  在該項目添加index.htnl,如 下圖

  技術分享圖片

  引入的js是直接測試npm run build 命令的效果

  技術分享圖片

  運行 npm run dev 打開本地服務

  技術分享圖片

  配置webpack loader 如下配置

module: {
        rules: [
            {
                test: /\.js$/, // 用正則匹配文件,用require或者import 引入的都會被匹配到
                loader: ‘babel-loader‘,
                exclude: 
/node_modules/ // 此文件夾不加載 }, { test: /\.css$/, use: [ ‘style-loader‘, ‘css-loader‘, // ‘postcss-loader‘ ] // 另一種寫法 loader:"style-loader!css-loader!postcss-loader" }, { test: /\.(png|jpe?j|gif|svg)(\?.*)?$/, loader: ‘url-loader‘, options: { limit: 10000, name: ‘fonts/[name].[ext]?[hash]‘ } }, { test:/\.vue$/, loader:‘vue-loader‘ //vue-loader會把vue單文件直接轉成js }, ] }, resolve: { extensions: [‘.js‘, ‘.vue‘, ‘.json‘], // 引入文件不用加後綴名 alias: { ‘@‘: path.resolve(__dirname,‘./src‘) // ./src 路徑縮寫為 @ } },

  開始配置 vue

  技術分享圖片

  這個loader 是15版本的,要在webpack配置文件裏配置 並安裝 html-webpack-plugin 插件 解析HTML

  技術分享圖片

  並在plugin 配置

  技術分享圖片

   main.js

import Vue from ‘vue‘;
import App from ‘./App‘;
new Vue ({
    el: ‘#app‘,
    template: ‘<App />‘,
    components: {App}
})

  寫這種形式的要配置webpack (默認是H寫法)

  技術分享圖片

  根入口 index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>vue+webpack</title>
</head>
<body>
    <div id="app"></div>
</body>
</html>

  src 文件內新建 App.vue文件

  

<template>
    <div>
        <h1>hello vue+webpack</h1>
    </div>
</template>

<script>
export default {
    name: ‘App‘
}
</script>

  項目內新建 static 文件夾

  技術分享圖片

   此時 一個簡單vue 腳手架就可以跑了!

6.配置 stylus cnpm install stylus stylus-loader -D

  webpack.config.js 添加

  

module: {
    rules: [
      ...
      {
                test: /\.(stylus|styl)$/,
                use: [
                    ‘style-loader‘,
                    ‘css-loader‘,
                    ‘stylus-loader‘
                ]
        },     
    ]
}

就可以用stylus寫css了

後續還請期待~

從零構建vue+webpack (一)