Closed xuexb closed 6 years ago
less编译:build-mip-less,pretest:sl,pretest没有区别
这个主要是添加了个 npm run build-mip-less
命令, 使用 pre*
操作在测试用例前把 less 编译成 css, 然后在 karma 运行时直接引用, 这样方便后续基于样式的测试, 当然之前也没有引入 less, 也可以去掉. 可以理解, 这个 npm run build-mip-less
命令就是为了配合 karma 测试的~ 对上线之类没有影响~
另外编译出来的位置放在dist里面是不是更合适点
赞, 我改到 /dist/mip.css
吧~
npm run dev: dev和build我觉得一是在于版本号的区分(build在文件后加了版本号),二是适应场景不同,dev用于线下调试,build用于线上编译;三是压缩区分,dev下对mip.js没有做压缩,但是对于mip.css做了压缩,我觉得可以统一下,dev对编译的文件都不要做压缩,也可以方便修改。
我理解 npm run build
应该是为了发版上线吧, 而 npm run dev
之前应该就是为了本地开发, 对比下:
比如开发/修改下 src/util.js
代码
<link rel="stylesheet" href="./dist/mip.css">
正文
<script src="./dist/mip.js"></script>
npm run dev
产出运行时文件即使基于 mip server
命令(该命令只会做个 alias 功能, 实际还是需要存在源文件才可以), 想开发核心代码也需要主动的编译
<link rel="stylesheet" href="./dist/mip.css">
正文
<script src="./deps/promise.js"></script>
<script src="./deps/document-register-element.max.js"></script>
<script src="./deps/esl.js"></script>
<script>
require.config({
baseUrl: './src',
paths: {
'jquery': '../deps/jquery',
'zepto': '../deps/zepto',
'naboo': '../deps/naboo',
'fetch': '../deps/fetch',
'fetch-jsonp': '../deps/fetch-jsonp'
}
});
require(['mip']);
</script>
npm run build-mip-less
编译 /dist/mip.css
src/**/*.js
实时修改, 刷新生效不过这种方式不支持 mip server
本地化形式, 需要先运行 npm run build
~
不会删除 dev 逻辑, 其实只是把 esl 的异步加载应用了, 我再加个 <用户贡献指南> 说明下如何开发测试核心代码吧~
在写测试用例时发现测试时需要先运行
node tools/build.js test
, 该命令会处理:导致修改一个代码需要反复的执行才可以看到结果. 结合 esl.js 天然的异步加载优势, 做出如下改动:
src/*, test/*
文件进行travis-ci
的勾子进去, 避免本地冗余处理npm run scripts
脚本, 添加了test:watch
功能, 可以很方便的监听代码改动进行测试src/less/mip.less
测试环境支持, 利用的是pretest
勾子在测试前编译test:sl
浏览器测试必须在覆盖率测试通过后进行, 避免某些测试不通过时也进行了浏览器测试导致报错, 影响 master 徽章src/util.js
文件有问题, 修改了该文件, 重点关注这次升级之后就可以:
本次修改主要针对测试的流程、易用性升级, 理论上不影响核心代码, 请大家多 Review 下~
本地运行测试通过, travis-ci 有问题我再看~