simple config of webpack
Demo1操作手册
本Demo演示进行简单配置的基本使用
准备环境
初始化环境, cd到demo目录之后, 执行如下命令:
npm init -y
npm install webpack webpack-cli -D
L0
实际上在大多开发中默认配置肯定是不够用的, 下面演示webpack的配置.
新建src目录, 在里面创建index1.js, 内容如下:
function hi() {
console.log('Hello Webpack!');
}
hi();
这个时候如果直接运行打包命令会报错, 因为已经没有了默认的入口文件了, 这个时候我们在根目录下添加webpack.config.js文件(这是webpack默认的配置文件的位置), 在里面输入如下内容:
module.exports = {
entry: './src/index1.js'
}
接下来我们使用wepack对该文件进行打包:
webpack
打包完之后, 可以看到根目录下多出了一个dist目录, 里面多了一个main.js的文件, 打包成功.
我们继续配置输出文件, 修改webpack.config如下:
const path = require('path');
module.exports = {
entry: './src/index1.js',
output: {
path: path.resolve(__dirname, 'dist1'),
filename: 'output.js'
}
}
修改完之后我们进行打包操作, 我们可以看到文件输出到了dist1/output.js, 运行一下发现一切正常, 我们成功配置了输出的目录和文件名.
L1
接下来的关于js配置都将在此项目中进行示范, 因此我们使用webpack命令的config参数来指定使用哪个配置文件来进行打包. 我们在根目录新建一个webpack.config的文件夹用来存放不同的配置文件. 同时为了方便运行, 我们将在package.json添加对应的scripts.
首先我们在webpack.config文件夹下新建文件l1.js, 内容如下:
const path = require('path');
module.exports = {
entry: {
output1: './src/index1.js',
output2: './src/index2.js'
},
output: {
path: path.resolve('dist'),
filename: '[name].js'
}
}
在package中添加如下scripts:
"l1": "webpack --config ./webpack.config/l1.js",
L1主要为了演示多文件入口, 因此我们在src目录下新建index2.js, 内容如下:
function hi() {
console.log('Hello Webpack, I\'m index2!');
}
hi();
我们执行如下命令来运行:
npm run l1
在上述配置文件中, 我们使用了两个入口文件, 同时在output中使用了[name]作为占位符来指代输出文件名.
因此, 实际上在之前的单入口文件的配置其实等价是:
module.exports = {
entry: {
main: './src/index.js',
}
}
simple config of webpack的更多相关文章
- webpack-dev-server --inline --progress --config build/webpack.dev.conf.js
vue 项目 npm run dev 运行时报错: npm ERR! xxx@1.0.0 dev: `webpack-dev-server --inline --progress --config b ...
- npm ERR! mathine_call@1.0.0 dev: `webpack-dev-server --inline --progress --config build/webpack.dev.conf.js` npm ERR! Exit status 1
internal/modules/cjs/loader.js:583 throw err; ^ Error: Cannot find module 'webpack' at Function.Modu ...
- npm ERR! code ELIFECYCLE webpack-dev-server --inline --progress --config build/webpack.dev.conf.js`
“E:\Program Files\JetBrains\WebStorm 2018.1.4\bin\runnerw.exe” G:\node\nodejs\node.exe G:\node\nodej ...
- 减少打包组件vue.config.js——Webpack的externals的使用
vue.config.js module.exports = { configureWebpack:{ externals: { vue: 'Vue', 'vue-router':'VueRouter ...
- dev: `webpack-dev-server --inline --progress --config build/webpack.dev.conf.js` vue启动报错解决
这是因为webpack-dev-server版本和vue版本不一样,需要将webpack-dev-server卸载了,安装对应版本 查看vue版本是 vue -V 注意:V是大写 卸载npm unin ...
- self_vue@1.0.0 dev: `webpack-dev-server --inline --progress --config build/webpack.dev.conf.js`
解决方案: 1.试一下 卸载npm uninstall webpack-dev-server,在安装这个npm i webpack-dev-server@2.9.7 2.删除node_modules目 ...
- webpack入坑之旅(三)webpack.config入门
这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...
- webpack.config.js配置文件
1.基本配置 webpack在执行时,除在命令行传入参数,还可以通过指定的配置文件来执行.默认会搜索当前目录下webpack.config.js.这个文件是一个node.js模块,返回一个json格式 ...
- vue-cli的webpack模版,相关配置文件dev-server.js与webpack.config.js配置解析
1.下载vue-cli npm install vue-cli -g vue-cli的使用与详细介绍,可以到github上获取https://github.com/vuejs/vue-cli 2.安装 ...
随机推荐
- UOJ188. 【UR #13】Sanrd [min_25筛]
传送门 思路 也可以算是一个板题了吧qwq 考虑min_25筛最后递归(也就是DP)的过程,要枚举当前最小的质因子是多少. 那么可以分类讨论,考虑现在这个质因子是否就是次大质因子. 如果不是,那么就是 ...
- 建立自己的键盘栈(shortcutkeyStack)
建立自己的键盘栈(shortcutkeyStack) 作为一名开发者, 快捷键是必不可少的, 并且各种开发工具都有提供快捷键. 但是各种工具(IDE,编辑器)因为历史或者其他不可抗原因(比如键盘的布局 ...
- npm 更新包
方法一手动跟新: 手动修改package.json中依赖包版本,执行npm install --force,强制从远程下载所有包更新本地包 方法二使用第三方插件: npm install -g npm ...
- selenium定位元素的方法
1.id定位: find_element_by_id() 从上面定位到的搜索框属性中,有个id="kw"的属性,我们可以通过这个id定位到这个搜索框 代码: # coding = ...
- 「SCOI2011」棘手的操作
传送门 Description 有\(N\)个节点,标号从\(1\)到\(N\),这\(N\)个节点一开始相互不连通.第$ i\(个节点的初始权值为\)a_i$ ,接下来有如下一些操作: U x y ...
- 超级详细的git使用指北
原文地址:https://www.cnblogs.com/wupeixuan/p/11947343.html 1.0 安装和配置 1.1 Git 安装 1.2 Git 配置 2.0 Git 基 ...
- spring boot 之注册
注册数据库 使用spring boot 之登录笔记 的数据库 在server 层 User create(String username, String password, String email ...
- 微信JS-SDK分享功能的.Net实现代码
JS-SDK接口是什么? 为了方便开发者实现微信内的网页(基于微信浏览器访问的网页)功能,比如拍照.选图.语音.位置等手机系统的能力,并方便开发者直接使用微信分享.扫一扫等微信特有的能力,微信推出了J ...
- 封装qt http文件下载类
#include <QApplication> #include <QtWidgets> #include <QtNetwork> //downloads one ...
- 什么是epistatic effects | 上位效应
epistatic与interaction之间的区别与联系? genetic上的interaction是如何定义的? Epistasis is the phenomenon where the eff ...