【重构开发中】本项目是基于jslib-little环境重构littlejs, 工具式JavaScript库,类似于loadsh。
功能库:
- 运动框架;
- 用ajax实现前后端分离;
- 设置、获取或者删除cookie;
- 支持异步方法之一generator的使用;
- 手势系统
- 扩展机制
- 常用工具库fn
- ArraryFn
- client系列兼容库
- DateFn
- DomFn
- Http(ajax、fetchHttp)
- NumberFn
- scroll系列兼容库
- Storage缓存库
- StringFn
- type类型判断库
- OtherFn
组件:
- 轮播图(响应式即适配移动端);
- 选项卡;
- 图片懒加载(瀑布流);
- ES6编写源码,编译生成生产代码
- 集成 babel-runtime (默认关闭)
- 第三方依赖自动注入
- 支持浏览器原生
- 支持AMD,CMD
- 支持Webpack,Rollup,fis等
- 支持Node
- 集成单元测试环境
- 集成eslint
- 集成travis-ci
- 支持banner
注意: 如果不同时使用 export 与 export default 可打开legacy模式,legacy模式下的模块系统可以兼容ie6-8,见rollup配置文件
单元测试保证支持如下环境:
- Node 4+
- Safari 6+ (Mac)
- iOS 5+ Safari
- Chrome 23+ (Windows, Mac, Android, iOS, Linux, Chrome OS)
- Firefox 4+ (Windows, Mac, Android, Linux)
- Internet Explorer 6+ (Windows, Windows Phone)
- Opera 10+ (Windows, linux, Android)
.
├── demo 使用demo
├── dist 编译产出代码
├── doc 项目文档
├── src 源代码目录
├── test 单元测试
├── CHANGELOG.md 变更日志
└── TODO.md 计划功能
通过npm下载安装代码
$ npm install --save @jomsou/littlejs
如果你是node环境
var little = require('littlejs');
如果你是webpack等环境
import little from 'littlejs';
如果你是requirejs环境
requirejs(['node_modules/littlejs/dist/index.aio.js'], function (little) {
// xxx
})
如果你是浏览器环境
<script src="node_modules/littlejs/dist/index.aio.js"></script>
在body结束标签结束前引入littlejs.js
<script src="./dist/index.js"></script>
然后使用函数
l().move(this, {'opacity': 100});
首次运行需要先安装依赖
$ npm install
一键打包生成生产代码
$ npm run build
运行单元测试,浏览器环境需要手动测试,位于test/browser
$ npm test
修改package.json中的版本号,修改README.md中的版本号,修改CHANGELOG.md,然后发布新版
$ npm run release
将新版本发布到npm
$ npm publish
可能需要你自己修改的地方如下:
- README.md 中的信息
- package.json 中的信息
- config/rollup.js 中的信息
- test/browser/index.html 中的仓库名称