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的更多相关文章

  1. 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 ...

  2. 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 ...

  3. 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 ...

  4. 减少打包组件vue.config.js——Webpack的externals的使用

    vue.config.js module.exports = { configureWebpack:{ externals: { vue: 'Vue', 'vue-router':'VueRouter ...

  5. 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 ...

  6. 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目 ...

  7. webpack入坑之旅(三)webpack.config入门

    这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...

  8. webpack.config.js配置文件

    1.基本配置 webpack在执行时,除在命令行传入参数,还可以通过指定的配置文件来执行.默认会搜索当前目录下webpack.config.js.这个文件是一个node.js模块,返回一个json格式 ...

  9. 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.安装 ...

随机推荐

  1. 《挑战30天C++入门极限》新手入门:C/C++中的结构体

        新手入门:C/C++中的结构体 什么是结构体? 简单的来说,结构体就是一个可以包含不同数据类型的一个结构,它是一种可以自己定义的数据类型,它的特点和数组主要有两点不同,首先结构体可以在一个结构 ...

  2. MYSQL | ERROR 1305(42000) SAVEPOINT *** DOES NOT EXIST

    autocommit模式:在开启情况下,对于每条statement来说,都会自动形成一个commit,也就是会即时对开始和结束一个事务.所以,当出现rollback to savepoint出现这个错 ...

  3. Word 软回车和硬回车

    网页上复制一大段内容,会发现很多向下的箭头,这种叫软回车,要如何批量替换成常见的硬回车呢?   工具/原料   word文档 方法/步骤   1 先认识这种向下的箭头,这种回车形式叫软回车,按shif ...

  4. Linux服务器下日志截取

    我们经常需要去Linux服务器上查看服务运行日志,但是有时候日志文件很大看起来很不方便,这个时候我们需要对日志进行切割筛选出自己需要的日志,比如查看某段时间内的日志,命令如下:   sed -n '/ ...

  5. Flutter: 运行新项目报错

    今天接手了一个客户传过来的Flutter项目,估计是客户直接拷贝过来的,无法直接运行,由于刚接手Flutter, 很多东西还不懂,折腾了一会给弄好了. 1. 提示Dart SDK is not con ...

  6. Angular中使用ECharts图表

    1.安装: npm install echarts --save 2.在 TypeScript 文件中导入echarts import * as echarts from 'echarts'; 3.根 ...

  7. ISO/IEC 9899:2011 条款6.8.1——标签语句

    6.8.1 标签语句 语法 1.labeled-statement: identifier    :    statement default    :    statement case    co ...

  8. ISO/IEC 9899:2011 条款6.5.8——关系操作符

    6.5.8 关系操作符 语法 1.relational-expression: shift-expression relational-expression    <    shift-expr ...

  9. log4j 异常时在日志文件里面显示空的。

    如下图所示,输入的时候不要写 e.getStackTrace() 一般情况下不会出问题,但有时候就会出问题 解决方案

  10. 生成有目录的pdf

    生成有目录的pdf 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 https://jingyan.baidu.com/article/ff411625c2153512e48237a ...