博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
生成自己的js工具包,包括打包webpack、测试mocha、生成文档jsdoc、发布npm包的操作...
阅读量:6905 次
发布时间:2019-06-27

本文共 1444 字,大约阅读时间需要 4 分钟。

keepsmiling说明

一些常用的函数集合,主要用到的技术如下:

  • ES6的包处理方式;
  • webpack打包方式;
  • BDD测试用例,只写了部分;
  • 使用jsdoc生成注释文档;
  • 你用eslint优化代码格式;

主要在于学习相关的技术与在平时的开发中总结一些常用的技巧,当然很多的函数是借用前辈经验。

项目运行

下载及查看

node 需要 6.0 以上版本。

$ https://github.com/moonbreezee/keepsmiling.git$ cd keepsmiling$ npm i 或者 yarn$ npm run dev

目录说明

keepsmiling  |—— lib // 源文件目录  |   |—— index.js // 入口文件  |   |—— *.js // 其他相关文件  |—— dist // 生成文件目录,modules引用文件  |—— doc // 生成的jsdoc说明文档,点击index.html可以本地查看  |—— scripts // 用到的脚本文件及相关配置  |—— static // index.html本地调试page  |—— test // 测试用例

常用命令

$ npm run dev 开发模式$ npm run build 生成可用非压缩文件$ npm run dep 生成可用压缩文件, 用于部署到npm$ npm run test 测试函数$ npm run eslint 测试代码规范

 

publish操作

需要发布上,需要如下操作:

修改package的version,说明CHANGELOG,然后登录与发布,需要本地执行$ npm run beforePublish,提交之后执行。

$ npm login$ npm publish

npm包说明

npm包实际是一个存档文件,即一个目录直接打包为.zip或tar.gz格式的文件,安装后解压还原为目录。

完全符合CommonJS规范的包目录应该包含如下这些文件:

  • package.json : 包描述文件。
  • bin: 用于存放可执行二进制文件的目录。
  • lib:用于存放javascript代码的目录。
  • doc:用于存放文档的目录。
  • test: 用于存放单元测试用例的代码。

开发npm包模块的时候,就可以按照以上目录结构,进行开发:

  1. lib目录下存放业务逻辑文件
  2. test目录下存放单元测试用例
  3. .npmignore记录哪些文件不需要被发布到npmjs.org
  4. .travis.yml是持续集成服务travis的描述文件
  5. index.js是入口文件
  6. makefile方便我们用make test进行测试
  7. README.md是此module的描述和使用方法

JSDoc生成文档的说明

eslint配置

全局安装eslint,然后初始化配置文件,目前使用版本^4.19,可以依据需要选择选择修改:

修改的部分规则

no-useless-escape 不允许在字符串和正则表达式中使用无意义的换行符"no-useless-escape": "off",

单体测试(BDD测试,Behavior Driven Development)

测试脚手架:karam

测试框架:mocha
断言库:power-assert

后续说明

后续还要不断的完善

转载于:https://www.cnblogs.com/changyangzhe/p/9993476.html

你可能感兴趣的文章
fastclick 源码注解及一些基础知识点
查看>>
CentOS Rsync服务端与Windows cwRsync客户端实现数据同步
查看>>
TAR包CLONE方式 安装11GR2 RAC数据库 (gril软件root.sh)
查看>>
热备份路由协议(HSRP)大型配置之详解
查看>>
gb2312编码文件转成utf8
查看>>
一次WinRoute后门攻防实况
查看>>
数据驱动业务决策的5个步骤
查看>>
上网个人信息如何不“裸奔” 10条信息安全建议
查看>>
JIRA的常用选项
查看>>
专访Facebook HipHop作者、阿里研究员赵海平:生物与计算机交织的独特人生
查看>>
监控视频须严加规范
查看>>
实例化需求的优点
查看>>
Linux管理常见错误的解决方法
查看>>
MySQL架构优化实战系列3:定时计划任务与表分区
查看>>
kafka - advertised.listeners and listeners
查看>>
Hadoop YARN学习监控JVM和实时监控Ganglia、Ambari(5)
查看>>
ECharts:免费,开源,超炫的可视化作品
查看>>
跨界 +赋能——互联网的下一个关键词
查看>>
argz_create函数
查看>>
vmware HA与vmware FT功能对比
查看>>