webpack安装配置与常见使用过程详解(结合vue)

一、安装配置

  1. 安装 Node.js
    Webpack 基于 Node.js,需要先安装 Node.js。官网下载地址:https://nodejs.org/en/

  2. 全局安装 webpack
    使用 npm 进行安装:

npm install webpack -g
  1. 全局安装 webpack-cli
    使用 npm 进行安装:
npm install webpack-cli -g

二、配置webpack.config.js

  1. entry
    entry 即入口,webpack 执行打包的入口文件路径。

  2. output
    output 即出口,webpack 执行打包生成的文件路径。

  3. module
    module 是一个配置对象,webpack 可以根据不同的文件类型,选择不同的 loader 进行解析,使得这些文件可以被打包到 bundle 中。

  4. plugins
    plugins 是 webpack 扩展插件,可以用于处理一些额外的任务。

  5. mode
    mode 是可选参数,用于指定当前的构建模式,可选值有 development、production 和 none。

三、常见使用过程

  1. 结合 Vue
    安装 vue 相关依赖:
npm install vue vue-loader vue-template-compiler -D

配置 webpack.config.js:

const VueLoaderPlugin = require('vue-loader/lib/plugin')

module.exports = {
  mode: 'development',
  entry: './src/main.js',
  output: {
    filename: 'bundle.js',
    path: path.resolve(__dirname, 'dist')
  },
  module: {
    rules: [
      {
        test: /\.vue$/,
        loader: 'vue-loader',
        exclude: /node_modules/
      }
    ]
  },
  plugins: [
    new VueLoaderPlugin()
  ]
}
  1. 使用 babel-loader 转义 ES6
    安装 babel-loader 和相关依赖:
npm install babel-loader @babel/core @babel/preset-env -D

配置 webpack.config.js:

module.exports = {
  mode: 'development',
  entry: './src/main.js',
  output: {
    filename: 'bundle.js',
    path: path.resolve(__dirname, 'dist')
  },
  module: {
    rules: [
          {
        test: /\.js$/,
        exclude: /node_modules/,
        loader: 'babel-loader',
        options: {
          presets: ['@babel/preset-env']
        }
      }
    ]
  }
};

以上示例可以结合实际项目进行配置和使用。

四、示例说明

  1. Vue 项目实战
    假设现在要实现一个简单的 Vue 项目,其中需要使用 Vue 模板文件和 scss 样式文件。

首先安装 vue 相关依赖:

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

然后安装 scss 相关依赖:

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

项目结构:

├── src
│   ├── main.js
│   ├── App.vue
│   ├── components
│   │   ├── Hello.vue
│   │   └── ...
│   ├── assets
│   │   ├── scss
│   │   └── ...
│   └── store
│       ├── index.js
│       └── ...
├── index.html
└── webpack.config.js

webpack.config.js 配置:

const path = require('path');
const VueLoaderPlugin = require('vue-loader/lib/plugin');
module.exports = {
  mode: 'development',
  entry: './src/main.js',
  output: {
    filename: 'bundle.js',
    path: path.resolve(__dirname, 'dist')
  },
  module: {
    rules: [
      {
        test: /\.vue$/,
        loader: 'vue-loader',
        exclude: /node_modules/
      },
      {
        test: /\.scss$/,
        use: [
          'style-loader',
          'css-loader',
          'sass-loader'
        ]
      }
    ]
  },
  plugins: [
    new VueLoaderPlugin()
  ]
}
  1. 使用 babel 转义 ES6
    现在会使用最新版的 ES6+ 语法进行开发,需要将写好的代码转成 ES5 可执行的语法。

安装 babel 相关依赖:

npm install babel-loader @babel/core @babel/preset-env -D

webpack.config.js 配置:

module.exports = {
  mode: 'development',
  entry: './src/main.js',
  output: {
    filename: 'bundle.js',
    path: path.resolve(__dirname, 'dist')
  },
  module: {
    rules: [
          {
        test: /\.js$/,
        exclude: /node_modules/,
        loader: 'babel-loader',
        options: {
          presets: ['@babel/preset-env']
        }
      }
    ]
  }
};

以上示例可以结合实际项目进行配置和使用。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:webpack安装配置与常见使用过程详解(结合vue) - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • Vue将将后端返回的list数据转化为树结构的实现

    要将后端返回的list数据转化为树结构,我们可以通过Vue自带的方法或使用第三方库来实现。以下是两种实现方式: 方法一:使用Vue自带方法实现 Vue提供了一个$filter方法,可以用于筛选数组并返回新的数组。我们可以根据父子节点的关系,遍历list数据,将每个子节点添加到对应的父节点下面,最终得到树结构的数据。 示例代码如下: // 原始数据 let l…

    Vue 2023年5月29日
    00
  • vue中如何给data里面的变量增加属性

    当需要在 Vue 实例的 data 对象中添加新属性时,可以通过以下两种方法来实现。 方法一:使用 Vue.set() 或 this.$set() 方法 Vue.set() 或 this.$set() 是 Vue 提供的全局方法,用于向响应式对象添加属性。如果需要以动态形式向 Vue 实例的 data 对象中添加属性,可以使用 Vue.set() 或 thi…

    Vue 2023年5月28日
    00
  • vue储存storage时含有布尔值的解决方案

    当在Vue中使用localStorage或sessionStorage储存包含布尔值的数据时,会遇到数据类型转换后的问题,布尔值在localStorage或sessionStorage中只能以字符串形式存储。这意味着当我们从存储中读取布尔值时,我们需要手动将字符串转换回布尔值。下面将会提供两种思路来解决这个问题。 解决方案1:使用JSON.stringify…

    Vue 2023年5月27日
    00
  • 教你使用vue3写Json-Preview的示例代码

    下面是关于“教你使用vue3写Json-Preview的示例代码”的完整攻略,包括两条示例说明。 什么是Json-Preview Json-Preview是一种用于显示json数据的工具,常用于数据展示和调试中,可以将复杂的json数据以树形结构的形式展现出来。 使用vue3编写Json-Preview的步骤 1.创建一个vue3项目 使用Vue CLI创建…

    Vue 2023年5月28日
    00
  • Vue数字输入框组件的使用方法

    下面是使用Vue数字输入框组件的完整攻略。 1. 确定Vue数字输入框组件的使用场景 Vue数字输入框组件可以用于需要获取数字输入的场景,如商家价格设置、购物车商品数量选择等。 2. 安装Vue数字输入框组件 可以通过npm安装Vue数字输入框组件: npm install vue-numeric-input –save 3. 引入Vue数字输入框组件 在…

    Vue 2023年5月27日
    00
  • VUE重点问题总结

    VUE重点问题总结攻略 1. Vue组件之间通信方式 在Vue组件开发中,组件之间通信是一个重要的问题。Vue提供了多种组件之间通信的方式,包括props、$parent/$children、$emit/$on、$refs等,下面分别进行详细说明。 Props 使用props向子组件传递数据是最常用的方式。父组件通过props向子组件传递数据,子组件通过pr…

    Vue 2023年5月28日
    00
  • vue中注册自定义的全局js方法

    Vue是一种流行的JavaScript框架,可以实现响应式和组件化的开发模式。在Vue中注册自定义全局js方法是非常常见的需求。下面是完整的攻略: 一、创建js方法 首先,我们需要创建自定义的全局js方法。例如,我们创建一个简单的方法,用于在控制台中输出一段消息: function logMessage(message) { console.log(mess…

    Vue 2023年5月28日
    00
  • Vue混入与插件的使用介绍

    下面将对Vue混入与插件的使用进行详细讲解。 什么是Vue混入? Vue混入是一种分发Vue组件中可复用功能的非常灵活的方式。混入(mixin)对象可以包含任意组件选项。当组件使用混入对象时,混入对象中的选项会被“混入”到组件自身的选项中。换句话说,混入就是将一些组件中相同的部分提取出来,然后在多个组件中共用。 混入的应用场景很广泛,例如:多个组件都需要注入…

    Vue 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部