1.0.0-alpha • Published 6 years ago
xc-utils v1.0.0-alpha
说明文档
这个是一个前端js工具包,主要提供一些公共的js类库。
- 主要实现:
- 提供可以通过
npm
安装的工具函数库- 支持按需加载
- 可以打包让客户端用标签引入
- 支持按需打包
- 支持本地运行
- 技术:
wepack+babel+handlebars+karma+mocha+ES5/ES6+node
目录结构
|-- build // 打包入口文件 ├─ build.js // 默认的打包入口文件 ├─ dev-server.js // 默认的打包入口文件 ├─ webpack.base.conf.js // 默认的打包入口文件 ├─ webpack.build.conf.js // 默认的打包入口文件 |-- config // 个人配置 ├─ index.js // 打包配置文件 |-- coverage // 测试报告 |-- dist // 打包目录 |-- entry // 打包入口目录 ├─ index.js // 默认的打包入口文件 |-- src // 功能代码 ├─ index.js // 总的输出文件 |-- test // 单元测试代码 ├─ karma.conf.js // 单元测试配置文件 ├─ package.json // npm配置文件 ├─ README.md // 项目说明文档 ├─ API.md // api说明文档
开始
- 加载依赖包:
npm install
- 本地发布:
npm run dev
默认启动本地8080
端口。本地启动后,工具js的访问地址:
localhost:8080/index.js
- 打包:
这里打包需要编写自己的入口js文件,再修改
config/index.js
中的配置,以实现按需打包。默认情况下,打包之后的js的文件路径在dist文件夹下,并且和入口js文件的目录结构相同。
// entry/demo/template/template.js
import template from '@/demo/template'
window.template = template;
// config/index.js
module.exports = {
build: {
// 1.打包入口文件
// 虽然我们提供了一个默认的打包入口文件 index.js 文件,
// 但是有的时候我们或许并不需要全部的函数库,我们想要的只是其中几个函数,
// 这样打包的js文件显然很臃肿,因此在这里你可以编写自己的打包入口文件,引入你想要的js库,然后配置在这里打包。
entry: 'demo/template/template.js',
// 2.是否输出 sourceMap
// 这个map文件是提供压缩之后的代码和源码的对应关系的文件,chrome可以解析这个文件在浏览器上显示我们的源码,
// 这主要是为了调试方便,但是到线上的时候必须得把这个关掉,否则会暴露自己的源码。
sourceMap: true,
// 5.是否输出gzip格式的文件
// nginx可以设置让我们请求的js走gzip文件,这将大大减小我们的js文件的大小。
// 如果这个设置为true,则会输出一个.gz文件。
productionGzip: true,
// 6.执行gzip压缩的文件列表
productionGzipExtensions: ['js', 'css']
}
};
运行命令
npm run build
即可打包,打包结束的js目录结构如下:|-- dist |-- demo |-- template ├─ template.js
发布到npm私服上:
npm publish
其他项目引入:
npm i ihdutils--save-dev
1.0.0-alpha
6 years ago
1.0.0
6 years ago