# 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. 【转】C# 调用WebService的方法

    很少用C#动态的去调用Web Service,一般都是通过添加引用的方式,这样的话是自动成了代理,那么动态代理调用就是我们通过代码去调用这个WSDL,然后自己去生成客户端代理.更多的内容可以看下面的两 ...

  2. PS流的格式和解析总结

    对于PS流,最近因为工作需要,所以MPEG2中的PS流格式和解包过程进行了学习. 首先我们需要知道PS包流格式是怎么样的: (来自http://blog.csdn.net/chen495810242/ ...

  3. Extjs 下拉框

    刚刚熟练了easyui控件的使用,又開始了如今的这个项目. 这个项目是个半成品.前端使用的是Extjs控件,jsp中没有代码.就引用了非常多的js...于是乎有种不知所措了呀. . . 说实话特别的不 ...

  4. win10系统下cmd输入一下安装的软件命令提示拒绝访问解决办法

    问题:win10系统安装了nvm,cmd命令提示不是内部或外部命令 解决:卸载nvm,重新安装,再一次输入nvm,发现正常显示: 问题:win10安装了nvm之后,安装node成功,输入node命令, ...

  5. AssetBundle之LoadFromCacheOrDownload()取代"new WWW (url)的作用

    1.为了充分利用缓存功能.2.缓存的资源包完全由文件名和版本号唯一标识,URL所有域名和路径信息在缓存被忽略.3.由于缓存的资源包通过文件名而不是完整的URL来识别,在任何时候资源包被下载,你可以更改 ...

  6. NFS挂在文件系统启动参数

    1.tiny6410(增强版)bootargs启动参数(周学伟)noinitrd console=ttySAC0,115200 lcd=S70 init=/init root=/dev/nfs rw ...

  7. jquery 中的回调函数,回调函数(callback)是什么?

    知乎上果然大牛比较多 大神解释如下: 你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话,过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货.在这个例子里, ...

  8. JsonConvert.DeserializeAnonymousType

    string JsApiTicketString = string.Empty; using (StreamReader reader = new StreamReader(response.GetR ...

  9. Codeforces Round #277.5 (Div. 2)部分题解

    A. SwapSort time limit per test 1 second memory limit per test 256 megabytes input standard input ou ...

  10. Java精选笔记_JSP技术

    JSP技术 JSP概述 什么是JSP 在JSP全名是Java Server Page,它是建立在Servlet规范之上的动态网页开发技术. 在JSP文件中,HTML代码与Java代码共同存在,其中,H ...