webpack 常用配置
webpack.config.js
- const path = require('path');
- const webpack = require('webpack');
- const htmlWebpackPlugin = require('html-webpack-plugin');
- const vueLoaderPlugin = require('vue-loader/lib/plugin'); //引入这行
- module.exports = {
- entry: './src/main.js',
- output: {
- path: path.resolve(__dirname, './dist'),
- filename: 'boundle.js'
- },
- mode: 'development',
- devServer: {
- open: true,//自动打开浏览器
- port: 3000,//运行端口号
- contentBase: 'src',//指定跟目录
- hot: true,//启用热更新
- openPage: 'index.html'//设置默认启动页面
- },
- plugins: [
- //配置插件的节点
- new webpack.HotModuleReplacementPlugin(),//热更新
- new vueLoaderPlugin(),
- new htmlWebpackPlugin({
- //创建一个内存中生成HTML页面的插件
- //并且把打包的boundle.js自动注入到html页面中
- template: path.join(__dirname, './src/index.html'),
- filename: 'index.html'
- })
- ],
- module: {
- rules: [
- //第三方模块匹配规则
- {
- test: /\.css$/,
- use: [
- 'style-loader',
- {
- loader: 'css-loader',
- options: {
- sourceMap: true
- }
- },
- {
- loader: 'postcss-loader',
- options: {
- ident: 'postcss',
- sourceMap: true,
- plugins: (loader) => {
- require('autoprefixer')({ overrideBrowserslist: ['> 0.15% in CN'] })
- }
- }
- }
- ]
- },
- {
- //处理图片路径的loader
- test: /\.(jpg|png|gif|bmp|jpeg)$/,
- use: {
- loader: 'url-loader',
- options: {
- limit: 8501,
- //哈希-图片原名称。图片原后缀
- name: '[hash:8]-[name].[ext]'
- }
- }
- },
- {
- test: /\.(ttf|eot|svg|woff|woff2)$/,
- use:['url-loader']
- // use: {
- // loader: 'url-loader',
- // options: {
- // }
- // }
- },
- // test:/\.(ttf|eot|woff|woff2|svg)$/,
- // use:['file-loader']//1.把你的资源移动到输出目录2.返回最终引入资源的url
- {
- test: /\.js$/,
- exclude: /(node_modules|bower_components)/,//排除这两个里面的JS不编译
- use: {
- loader: 'babel-loader',
- }
- },
- {
- test: /\.vue$/,
- use: [
- {
- loader: 'vue-loader',
- }
- ]
- },
- {
- test: /\.scss$/,
- use: ["style-loader", "css-loader", "sass-loader"]
- }
- ]
- }
- };
package.json(VUE流派)
- {
- "name": "webpack-test",
- "version": "1.0.0",
- "description": "test",
- "main": "main.js",
- "dependencies": {
- "jquery": "^3.4.1",
- "node-sass": "^4.12.0",
- "vue": "^2.6.10",
- "webpack-dev-server": "^3.8.0"
- },
- "devDependencies": {
- "autoprefixer": "^9.6.1",
- "babel-core": "^6.26.3",
- "babel-loader": "^7.1.5",
- "babel-plugin-transform-runtime": "^6.23.0",
- "babel-preset-env": "^1.7.0",
- "babel-preset-stage-0": "^6.24.1",
- "css-loader": "^3.2.0",
- "file-loader": "^4.2.0",
- "html-webpack-plugin": "^3.2.0",
- "postcss-loader": "^3.0.0",
- "sass-loader": "^8.0.0",
- "style-loader": "^1.0.0",
- "url-loader": "^2.1.0",
- "vue-loader": "^15.7.1",
- "vue-router": "^3.1.3",
- "vue-template-compiler": "^2.6.10",
- "vuex": "^3.1.1",
- "webpack": "^4.39.3",
- "webpack-cli": "^3.3.8"
- },
- "scripts": {
- "dev2": "webpack-dev-server --open --port 3000 --contentBase src --hot",
- "dev": "webpack-dev-server",
- "test": "echo \"Error: no test specified\" && exit 1"
- },
- "author": "",
- "license": "ISC"
- }
webpack 常用配置的更多相关文章
- webpack常用配置总结
1. webpack简介 webpack 是一个模块打包工具.它使得模块相互依赖并且可构建等价于这些模块的静态资源.相比于已经存在的模块打包器(module bundler),webpack的开发动机 ...
- webpack常用配置
webpack --help或webpack -h 列出命令行所有可用的配置选项 webpack --config example.config.js 指定其他的配置文件.配置默认文件为webpack ...
- vue项目构建:vue-cli+webpack常用配置
1,Webpack-dev-server的proxy用法:https://www.jianshu.com/p/f489e7764cb8 2,vue-cli3搭建项目之webpack配置:https:/ ...
- vue第二单元(webpack的配置-学习webpack的常用配置)
第二单元(webpack的配置-学习webpack的常用配置) #课程目标 掌握webpack的常用配置 掌握如何根据实际的需求修改webpack的对应配置 了解webpack-dev-server的 ...
- 在Webpack 5 中如何进行 CSS 常用配置?
本文摘要:主要通过实操讲解运用Webpack 5 CSS常用配置的方法步骤 前文已谈到可以通过配置 css-loader 和 style-loader,使 webpack5 具有处理 CSS 资源的能 ...
- webpack实用配置
前面的话 上文介绍了webpack入门,本文将详细介绍webpack实用配置 版本号 以entry.js打包为bundle.js为例,出口的filename可以设置为[id].[name].[hash ...
- 在找一份相对完整的Webpack项目配置指南么?这里有
Webpack已经出来很久了,相关的文章也有很多,然而比较完整的例子却不是很多,让很多新手不知如何下脚,下脚了又遍地坑 说实话,官方文档是蛮乱的,而且有些还是错的错的..很多配置问题只有爬过坑才知道 ...
- webpack详细配置解析
阅读本文之前,先看下面这个webpack的配置文件,如果每一项你都懂,那本文能带给你的收获也许就比较有限,你可以快速浏览或直接跳过:如果你和十天前的我一样,对很多选项存在着疑惑,那花一段时间慢慢阅读本 ...
- Webpack 常用命令总结以及常用打包压缩方法
前言:Webpack是一款基于node的前端打包工具,它可以将很多静态文件打包起来,自动处理依赖关系后,生成一个.js文件,然后让html来引用,不仅可以做到按需加载,而且可以减少HTTP请求,节约带 ...
随机推荐
- python函数-基础知识
一.含义函数是程序内的“小程序” 二.示例 #!/usr/bin/env python #coding:utf-8 def hello(): print('Hello world!') print(' ...
- C语言如何操作内存
1.用变量名来访问内存(c语言对内存地址的封装.数据类型.函数名)--直接访问内存(使用地址) 如 int a; 编译器将申请32bit的内存(4个内存单元),同时将内存地址和变量名a绑定,操作a时, ...
- JavaSE编码试题强化练习6
1.写出选择排序的代码实现,对一个int数组进行排序 public class TestSelectSort { public static void main(String[] args) { in ...
- Appium+Python之异常自动截图
运行过程中出现异常情况,我们怎么直观的看到呢?最简单的方法就是可以把异常现象截图下来. 思路:我这里采用get_screenshot_as_file(filename)方法,filename通过获取时 ...
- 小白学Python(13)——pyecharts 绘制 柱状图/条形图 Bar
Bar-基本示例 from example.commons import Faker from pyecharts import options as opts from pyecharts.char ...
- Javascript 中的深浅拷贝
工作中经常会遇到需要复制 JS 数据的时候,遇到 bug 时实在令人头疼:面试中也经常会被问到如何实现一个数据的深浅拷贝,但是你对其中的原理清晰吗?一起来看一下吧! 为什么会有深浅拷贝 想要更加透彻的 ...
- 修复线上bug
1,git branch new_branch 2,git push origin new_branch 以上是线上地址操作,以下是本地仓库操作 3,git fetch 4,git checkout ...
- 使用jQuery实现Socket客户端
摘于抄书web前端开发 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> & ...
- HTML创建链接框
使用CSS样式创建一个漂亮的链接框吧 <!DOCTYPE html> <html> <head> <style> a:link,a:visited { ...
- swift实现线程安全的栈和队列
实现一个线程安全的栈 这里使用数组来存储栈的数据.不足之处在于本例中的Stack可以无限扩容,更好的是初始化时候指定一个最大容量,防止不断扩容申请内存导致内存不够的问题.这里的线程安全使用一个串行队列 ...