# Webpack Project Build
1.创建一个项目目录文件夹
  如:D:/demo
2.打开demo文件夹,按住Shift + 鼠标右键,选择【在此处打开命令窗口】
3.初始化npm,生成package.json文件
  npm init -y
  这是为了便于日后项目包的管理及发布,详情请查阅https://docs.npmjs.com
4.安装 webpack
【安装最新版本】
  npm install --save-dev webpack
【安装特定版本】
  npm install --save-dev webpack@<version>
5.安装 webpack 4+ 版本
  npm install --save-dev webpack-cli
6.创建webpack.config.js文件
  配置请参考官方文档:
  https://www.webpackjs.com/configuration/#%E9%80%89%E9%A1%B9
7.编辑package.json文件
  将:
  "main": "index.js"
  替换为:
  "private": true
  这一步官网介绍是为了确保我们安装包是私有的(private),移除 main 入口,可以防止意外发布你的代码。
常见项说明:
--name:项目名称。(默认: 当前目录名称)
--version:项目版本。(默认: 1.0.0)
--description:项目描述。(默认: 来自README的信息 || "")
--keywords:项目关键词。
--homepage:项目官网地址。
--license:项目许可证。
--author:项目作者。
--contributors:项目贡献者。
--files:值为数组类型,
    a.为执行"npm pack"时需要包含的文件
    b.需为根目录文件(其可以是文件名或文件夹名,当为文件夹名时将包含其下的所有子文件及子文件夹)
    c.默认为["*"],包含所有文件(当使用默认值时,可在根目录创建".npmignore"文件来指定排除哪些文件,语法与".gitignore"类似)
--main:程序的主要入口点,当另一个应用程序需要您的模块时将加载的文件的名称。(默认: index.js)
--repository:项目代码存放地址,对想要为你的项目贡献代码的人有帮助
      eg: { "type" : "git", "url" : "https://github.com/npm/cli.git"}
--config:项目配置{\\尚有疑问\\}
    eg:"config" : { "port" : "8080" }
    a.可通过"process.env.npm_package_config_port"来调用
    b.可通过"npm config set foo:port 8001"来修改其配置
--dependencies:您的应用程序在生产中所需的包。
--devDependencies:仅为本地开发和测试所需的包。
--private:当为"true"时npm将不允许您发布该项目
--scripts:值为对象类型,指定了项目的生命周期个各个环节需要执行的命令(默认: 一个空test脚本)
——prepublish:在打包并发布包之前运行,以及在没有任何参数的本地npm安装之前运行
——prepare:在打包和发布包之前运行,在没有任何参数的本地"npm install"上运行,以及安装git依赖项时。这是在preublish之后运行,但是在preublishOnly之前运行
——prepublishOnly:在包准备和打包之前运行,仅限于npm发布
——prepack:在打包tarball之前运行(在"npm pack","npm publish",以及安装git依赖项时
——postpack:在生成tarball之后运行并移动到其最终目标
——publish,postpublish:在包发布后运行
——preinstall:在安装软件包之前运行
——install,postinstall:安装包后运行
——preuninstall,uninstall:在卸载软件包之前运行
——postuninstall:在卸载软件包之后运行
——pretest, test, posttest:由"npm test"命令运行
——prestop, stop, poststop:由"npm stop"命令运行
——prestart, start, poststart:由"npm start"命令运行
——prerestart, restart, postrestart:由"npm restart"命令运行
——preshrinkwrap, shrinkwrap, postshrinkwrap:由"npm shrinkwrap"命令运行
另外,也可以通过"npm run <stage>"来运行指定的脚本。当前除了上述这些生命周期以外,你也可以自定义一些可以通过"npm run"来执行的脚本指令
eg:"scripts": { "dev":"node app.js" }
执行cli命令:"npm run dev" 就可以运行 "node app.js"
详情请参考官方文档:https://docs.npmjs.com/misc/scripts
详细package.json文件配置请参考官方文档:
https://docs.npmjs.com/files/package.json.html
在博客园也发现一个很好的非常详情的中文翻译版:
https://www.cnblogs.com/tzyy/p/5193811.html#_h1_9

Webpack基础入门学习笔记的更多相关文章

  1. ElasticSearch基础入门学习笔记

    前言 本笔记的内容主要是在从0开始学习ElasticSearch中,按照官方文档以及自己的一些测试的过程. 安装 由于是初学者,按照官方文档安装即可.前面ELK入门使用主要就是讲述了安装过程,这里不再 ...

  2. Linux基础入门学习笔记20135227黄晓妍

    学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统   2. 能够熟练使用Linux系统的基本命令   3. 熟练使用L ...

  3. Linux基础入门学习笔记之三

    第四节 Linux目录结构及文件基本操作 Linux目录结构 Linux 的目录与 Windows 的目录的区别 目录与存储介质(磁盘,内存,DVD 等)的关系 Windows 一直是==以存储介质为 ...

  4. Linux基础入门学习笔记之四

    环境变量与文件查找 环境变量 变量 所谓shell变量,就是计算机中用于记录一个值(不一定是数值,也可以是字符或字符串)的符号,而这些符号将用于不同的运算处理中.通常变量与值是一对一的关系,可以通过表 ...

  5. Linux基础入门学习笔记之二

    第三节 用户及文件权限管理 Linux用户管理 Linux是可以实现多用户登录的操作系统 查看用户 who命令用于查看用户 shiyanlou是当前登录用户的用户名 pts/0中pts表示伪终端,后面 ...

  6. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  7. 学习参考《零基础入门学习Python》电子书PDF+笔记+课后题及答案

    国内编写的关于python入门的书,初学者可以看看. 参考: <零基础入门学习Python>电子书PDF+笔记+课后题及答案 Python3入门必备; 小甲鱼手把手教授Python; 包含 ...

  8. 学习《零基础入门学习Python》电子书PDF+笔记+课后题及答案

    初学python入门建议学习<零基础入门学习Python>.适合新手入门,很简单很易懂.前一半将语法,后一半讲了实际的应用. Python3入门必备,小甲鱼手把手教授Python,包含电子 ...

  9. Hadoop入门学习笔记---part3

    2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...

随机推荐

  1. TensorFlow基础笔记(11) max_pool2D函数

    # def max_pool2d(inputs, # kernel_size, # stride=2, # padding='VALID', # data_format=DATA_FORMAT_NHW ...

  2. C++中 char *s 和 char s[] 的区别

    原因 刚好看到给main传递参数,书上(C++Primer)说“ int main(int argc, char *argv[])也可以写成 int main(int argc, char **arg ...

  3. PID控制器的应用:控制网络爬虫抓取速度

    一.初识PID控制器 冬天乡下人喜欢烤火取暖,常见的情形就是四人围着麻将桌,桌底放一盆碳火.有人觉得火不够大,那加点木炭吧,还不够,再加点.片刻之后,又觉得火太大,脚都快被烤熟了,那就取出一些木碳…… ...

  4. python 脚本检测python 版本

    通过sys 模块的sys_info可以返回当前python 的版本信息, 其返回值是一个元组, 比如(2, 6, 6, 'final', 0); 表示当前版本为2.6.6 , 我们可以利用这个变量的值 ...

  5. ubuntu安裝 R RStudio

    sudo apt--i386.deb ref: http://blog.csdn.net/lichangzai/article/details/39376117

  6. 电视不支持AirPlay镜像怎么办?苹果iPhone手机投屏三种方法

    导读:苹果手机多屏互动功能在哪里?iPhone苹果手机没有AirPlay镜像怎么办?三种方法教你苹果iPhone手机怎么投影到智能电视上. 前言: 苹果iPhone手机投屏到电视设备上,需要使用到Ai ...

  7. jQuery中return false,e.preventDefault(),e.stopPropagation()的区别

    e.stopPropagation()阻止事件冒泡 <head> <title></title> <script src="Scripts/jQue ...

  8. CentOS7怎么修改命令行启动

    root用户下直接执行命令: systemctl set-default multi-user.target 然后reboot即可.

  9. jQuery-编辑选择结果(添加、筛选、过滤或检测)

    编辑选择结果 操作  实例  效果  备注 添加 添加选择器 $("p").add(".a") 添加类名为a的选择器 并不影响源结果集     $(" ...

  10. 【python】通过代理安装包

    1.安装setuptools 支持 pip install 或easy_install 2.在终端执行 set HTTP_PROXY=http://your.proxy.com:yourPort se ...