也可以先写代码后推送仓库 , 为避免不必要错误 , 最好先创建仓库
我这里采用第一种:
format.js
// c. validate.js 校验文件
// 解决toFixed保留小数的问题
const formatToFixed = (money, decimals = 2) => {
return (
Math.round(
(parseFloat(money) + Number.EPSILON) * Math.pow(10, decimals)
) / Math.pow(10, decimals)
).toFixed(decimals);
}
const Format = {
// 格式化金额展示: 12341234.246 -> $ 12,341,234.25
formatMoney: (money, symbol = "", decimals = 2) =>
formatToFixed(money, decimals)
.replace(/\B(?=(\d{3})+\b)/g, ",")
.replace(/^/, `${symbol}`),
};
export default Format;
validate.js
// b. format.js 格式化文件
const Validate = {
/**
* 手机号校验
*/
mobileCheck: (value) => /^[1][3,4,5,7,8][0-9]{9}$/.test(value),
/**
* 身份z校验
*/
IDCardCheck: (value) =>
/^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/.test(
value
),
/**
* 邮箱校验
*/
emailCheck: (value) =>
/^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/.test(value),
};
export default Validate;
index.js
// a. index.js 入口文件
import Format from "./src/format";
import Validate from "./src/validate";
export { Format, Validate };
3. 工具初始化
在项目根目录下执行
3.1 npm init得到一个package.json, 生成过程大部分只要enter 后面可以按需要修改
{
"name": "npm-jackson3791", // 包名,必须要独一无二
"version": "1.0.0", // 版本号
"author": "jackson3791", // 作者
"description": "npm测试包 仓库", // 描述信息
"keywords": ["utils", "format", "money", "phone"], // 关键词,提升SEO
"repository": {
// 代码托管位置
"type": "git",
"url": "https://github.com/jackson3791/npm-jackson3791"
},
"license": "ISC", // 许可证
"homepage": "https://your-package.org", // 包的主页或者文档首页
"bugs": "https://gitee.com/huang-jiajin/npm-jackson3791/issues", // 用户问题反馈地址
"main": "index.js", // 入口文件
"scripts": {
// 存放可执行脚本
"test": "echo \"Error: no test specified\" && exit 1"
},
"dependencies": {
// 运行依赖
},
"devDependencies": {
// 开发依赖
}
}
3.2 发布前准备工作 , 先把镜像源更换到 npm 源
// 查看npm镜像源地址
npm config get registry // 切换npm镜像源
// 设置npm默认源
npm config set registry https://registry.npmjs.org/
// 设置npm镜像源为淘宝镜像,完成后自行恢复
npm config set registry https://registry.npm.taobao.org/
3.3 先把代码发布到仓库进行保存备份(无先后顺序)
git add .
git commit -m "first commit"
git branch -M master git remote add origin https://github.com/jackson3791/npm-jackson3791
git push -u origin master
3.4 登录(创建)npm 设置动态校验
创建好 npm 账号后
3.4.1 npm近期增加了 动态验证码校验 , 需要设置 动态验证3.4.1.1 首先登录npm账号
3.4.1.2 找到 two-factor authentication 点击Enable 2FA
3.4.1.3 手机下载 Authentication 这个APP 微软出品
3.4.1.4 打开app 手机直接添加账号 => 其它账户 =>
手机直接扫码 => 手机app自动生成账户 , 点击就可查看动态令牌
扫描后还要手动输入一次令牌进行确认
成功!
// 登陆
npm login
// 控制台会提示输入相关信息
Log in on https://registry.npmjs.org/
Username: // 用户名
Password: // 密码
Email: (this IS public) // 邮箱
Enter one-time password: // 双因素身份验证 (2FA),需要生成一次性密钥(手机app的动态验证码)
Logged in as xxx on https://registry.npmjs.org/.
//发布
npm publish
发布前输入前还会校验一次(输动态验证码)
试用: 随便一个项目根目录 安装 npm install npm-jackson3791
使用–看控制台就知道有没有 , 也可以直接去 node_modules文件夹查看有没有npm-jackson3791
import { Format, Validate } from 'npm-jackson3791'
console.log(Format.formatMoney(12341234.246, '$', 2)) // ,341,234.25
console.log(Validate.mobileCheck('123456')) // false
3.7 更新
更改内容后 直接输入 npm version patch 自动返回下一个版本号=>package.json里面的版本号会自动修改
然后重新发布 npm publish
发布成功
//常用发布命令
// 自动更改版本号,并且commit (会将版本号改为指定xxx版本)
npm version xxx
// 自动更新为下一个小版本号 如v1.0.1
npm version patch
// 重新发布
npm publish
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)