webpack 搭建vue-cli

# weback 搭建vue-cli

### 创建项目

* npm init 创建package.json,里面包含项目信息

* npm install webpack webpack-cli --save-dev

### 创建vue项目相关内容

* 创建src文件夹

* 在src中创建 main.js 和 App.vue

* 下载 vue 模块

* 书写 main.js 文件内容

```

import Vue from 'vue'

import App from './App.vue'

import './assets/logo.png'

new Vue({

    render:h=>h(App)

}).$mount('#app');

```

* 书写 App.vue 的内容

```

<template>

    <div id="app">

        <h1>共克时艰</h1>

    </div>

</template>

```

## 配置 webpack.config.js

### 安装vue相关laoder

* 安装 vue-loader和 vue-template-compiler

* npm install -D vue-loader vue-template-compiler

vue-loader 需要在module属性中设置,vue-template-compiler 不需要进行任何操作,只要安装成功,在使用vue-loader的时候就会自动执行vue-template-compiler的功能

* vue-loader 用来加载 vue文件,使文件支持vue语法

* vue-template-compiler 用来加载vue文件中的视图部分的内容

```

    const { VueLoaderPlugin } = require('vue-loader');

 plugins:[

        // 引入 vue-loader 插件

        new VueLoaderPlugin()

    ],

     module:{

        rules:[

            // 设置解析 vue 文件的模块,loader

            {

                test:/\.vue$/,

                loader:'vue-loader'

            }

        ]

     }

```

### 配置基本的内容

* 配置 文件入口 entry

* 配置文件出口 output

```

output:{

    path:path.resolve(__dirname,'dist'),

    filename:'main.js',

    // 清空路径中的内容,在生成文件之前清空 output 目录

    clean:true

},

```

* 显示html内容需要使用 html-webpack-plugin 插件

```

   const HtmlWebpackPlugin = require('html-webpack-plugin');

 new HtmlWebpackPlugin({

        template:'./public/index.html',

        title:'我的项目',

        minify:{

            removeAttributeQuotes:true,

            // collapseWhitespace:true

        },

        inject:'body'

    })

```

* 调用css 需要加载 css-loader style-loader sass-loader

* npm install sass css-loader style-loader sass-loader -D

```

    //module 中设置

    {

        test:/\.(css|sass)$/,

        use:['style-loader','css-loader','sass-loader']

    }

```

* 显示图片,需要使用 url-loader file-loader html-loader

* npm install url-loader file-loader html-loader -D

```

    //在js文件中(包括vue文件的js部分)

    import './assets/logo.png'

    // module属性中

    {

        test:/\.(png|jpg|gif)$/,

        use:[{

            loader:'url-loader',

            options:{

                esModule:false

            }

        }]

    },

    {

        test:/\.html$/,

        loader:'html-loader'

    }

```

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值