【npm】伙计,给我来一杯package.json!不加糖
目录
- json和JS对象的区别
- name字段
- name字段的限制
- version字段
- npm对version定义的规则要求
- npm有自己的检验version的模块——node-semver
- keywords和description字段
- 字段要求:
- license字段
- author字段
- main字段
- script字段
- 什么时候要加“run”,什么时候可以不用加“run”呢?
- npm为script字段中的脚本路径都加上了node_moudles/.bin前缀
- npm start是有默认值的,默认为:node server.js
- better-npm-run的安装与betterScript字段的使用
- dependencies字段和devDependencies字段
- 怎么区分到底安装包的时候放在dependencies中还是devDepencies中呢?
正文
前言:夜深了,我熬了一锅热气腾腾的package.json,给大家端上来,希望大家喜欢
json和JS对象的区别
name字段
name字段的限制
version字段
npm对version定义的规则要求
npm有自己的检验version的模块——node-semver
const semver = require('semver') semver.valid('1.2.3') // '1.2.3' semver.valid('a.b.c') // null
keywords和description字段
字段要求:
license字段
{ "license" : "BSD-3-Clause" }
{ "license" : "(ISC AND GPL-3.0)" }
author字段
{ "name" : "Barney Rubble" , "email" : "b@rubble.com" , "url" : "http://barnyrubble.tumblr.com/" }
main字段
script字段
什么时候要加“run”,什么时候可以不用加“run”呢?
"scripts": { "build": "XXX.js" }
的时候,你运行XXX.js就只能通过npm run build去运行了
npm为script字段中的脚本路径都加上了node_moudles/.bin前缀
就多了一个叫做webpack的脚本
"scripts": {"start": "webpack"}
"scripts": {"start": "node_modules/.bin webpack"}
npm start是有默认值的,默认为:node server.js
better-npm-run的安装与betterScript字段的使用
"scripts": {"test": "NODE_ENV=production karma start" }
"scripts": {"test": "better-npm-run test" }, "betterScripts": {"test": {"command": "karma start","env": {"NODE_ENV": "test"}} }
if (process.env.NODE_ENV === 'development') { // 省略诸多内容 app.use(require('webpack-hot-middleware')(compiler, {path: '/__webpack_hmr' })) }
dependencies字段和devDependencies字段
怎么区分到底安装包的时候放在dependencies中还是devDepencies中呢?
【npm】伙计,给我来一杯package.json!不加糖相关推荐
- npm ERR! code ENOENT npm ERR! syscall open npm ERR! path E:\jd\pro1\ka-mrm-jd_intern\package.json np
描述: 做jest测试的时候遇到执行npm test报错 npm ERR! code ENOENT npm ERR! syscall open npm ERR! path E:\jd\pro1\ka- ...
- 【Java设计模式】简单学桥接模式——来杯大杯加奶不加糖咖啡
目录 说明 目标 实现方式 应用场景 其他链接 说明 结构型模式之一,其他还有适配器模式.装饰模式.组合模式.外观模式.享元模式.代理模式 目标 用抽象关联取代了多层继承,将类之间的静态继承关系转换为 ...
- npm package.json文件中的依赖关系,devDependencies和peerDependencies之间有什么区别?
本文翻译自:What's the difference between dependencies, devDependencies and peerDependencies in npm packag ...
- NPM 安装 TypeScript 和 npm 的 Invalid package.json 错误以及运行第一个typescript程序
TypeScript 是 JavaScript 的一个超集,支持 ECMAScript 6 标准(ES6 教程). TypeScript 由微软开发的自由和开源的编程语言. TypeScript 设计 ...
- npm 与 package.json 快速入门
摘自 https://blog.csdn.net/u011240877/article/details/76582670#什么是-npm npm 是前端开发广泛使用的包管理工具,之前使用 Weex ...
- npm error enoent:no such file or directory...are-we-there-yet ; package.json文件和node_modules模相互转化
vue-cli项目一段时间没有变动,几个星期后继续编辑安装 npm install vue-skeleton-webpack-plugin 插件时报错 npm error enoent:no suc ...
- npm和package.json那些不为常人所知的小秘密
此文已由作者黄锴授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 强大的命令功能 如果你没使用过script,那你可算是从来没手动编辑过package.json.script作 ...
- npm 与 package.json 快速入门教程
npm 是前端开发广泛使用的包管理工具,之前使用 Weex 时看了阮一峰前辈的文章了解了一些,这次结合官方文章总结一下,加深下理解吧! 读完本文你将了解: 什么是 npm? 安装 npm 更新 npm ...
- npm与package.json
[背景介绍][知识剖析][常见问题][解决方案][编码实战][扩展思考][更多讨论][参考文献] 八个方面深度解析前端知识/技能,本篇分享的是: [npm与package.json] 今天给大家分享的 ...
- 启动vue项目报错:npm ERR! enoent ENOENT: no such file or directory, open‘E:xxxx\package.json‘
问题描述:cmd / VSCode 启动vue项目报错:npm ERR! enoent ENOENT: no such file or directory, open'E:xxxx\package.j ...
最新文章
- Rus入门到放弃——字符串与字符切片
- Mysql 练习 总结
- 安卓canvas设置HTML,安卓开发中view和canvas的理解
- 引用wx.getclipboarddata中的内容_教材、图书在引用时要注意哪些方面
- hdu5489 Removed Interval dp+线段树优化
- 【elasticsearch】xpack exporter failed to flush export bulks
- 服务器日志监控系统怎么解决,服务器日志监控系统
- Smart3D倾斜摄影测量数据处理
- linux64位wps下载授权码,ubuntu15.04安装wps-office的64位版
- TOPSIS综合评价模型
- 大数据杀熟?苹果回应:定价权在开发者那
- 18.10.29 POJ 3987 Computer Virus on Planet Pandora(AC自动机+字符串处理)
- RationalDMIS 2020 RPS坐标系
- macbook 终端命令怎么使用_苹果MAC系统怎么使用ping命令打开终端?
- 笔记本计算机工作站,笔记本篇:惠普ZBook G3工作站_Intel笔记本电脑_笔记本评测-中关村在线...
- 关于spoolsv.exe 报错,并打印服务停止的问题
- “Microsoft Office Professional Plus 2010在安装中出错”解决办法
- 学习人工智能需要参加哪些课程或培训,如何选择?
- APP自动化(一):tidevice使用
- FPGA入门:QuartusⅡ实现半加器,全加器,四位全加器
热门文章
- 淘宝签名分析之一(反编译和利用frida快速找点)
- 新浪云 php,php在新浪云中使用imagick的方法
- 《237 Gbit ps unrolled hardware polar decoder》237 Gbit / s展开的硬件极化解码器
- html5中加水平分割线,HTML设置水平分割线
- 39 What Determines the Kind of Person You Are ?是什么决定了你是哪种内型的人 ?
- 什么是域名系统 (DNS)
- 计算机科学导论第一章练习解答
- k8s不适合mysql_K8S 配置mysql配置文件不生效问题处理
- pandas算加权平均值_python – 为pandas中的不规则时间序列创建加权平均值
- 芯片里面长啥样?扫描电子显微镜放大10000倍告诉你!