# rollup-master **Repository Path**: tombtiger/rollup-master ## Basic Information - **Project Name**: rollup-master - **Description**: 使用rollup合并、混淆代码 - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2018-08-22 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 培训(paul) 放弃了jshint,用上了eslint,用了Airbnb的风格(没有任何修改,感觉这个风格很不错): https://github.com/airbnb/javascript 附件的代码解压,进入解压目录,运行npm install,将在当前目录安装所有用到的npm库 运行npm start启动服务,运行npm run eslint检查js代码,运行npm run bundle打包js文件。 可以安装sublime text插件,在编辑器中查看eslint结果、以及修复代码: https://github.com/roadhump/SublimeLinter-eslint https://github.com/TheSavior/ESLint-Formatter/ 附件代码eslint配置成了只检查src目录(通过.eslintignore实现) eslint继承了Airbnb风格(.eslintrc.js中的:extends: 'airbnb-base') eslint会在目录node_modules、vendor、dist中寻找import的第三方包(也是就是不以相对路径开头的)(.eslintrc.js中的settings: { 'import/resolver': { node: { moduleDirectory: [) (为了解决这个问题费了老大劲,具体参考 https://www.npmjs.com/package/eslint-import-resolver-node ) 具体看demo.js: import { vec3 } from 'gl-matrix'; //在node_modules中 import { Vec3 } from 'ext'; // 在vendor目录 import { A, B, version } from 'library'; // 在dist目录 rollup也配置成了从目录node_modules、vendor、dist中寻找第三方包(rollup.config.demo.js:resolve({ customResolveOptions: { moduleDirectory: [) (也浪费不少时间,具体参考 https://github.com/rollup/rollup-plugin-node-resolve ) 至于是否需要node_modules模块(比如这里的gl-matrix)、其他模块(比如vendor/ext.js,可以替换成twaver.js,t.js虽然现在不支持)、自己的library(core目录), 可以根据自己的实际项目情况裁剪。 增加了rollup的css插件,demo运行方式: npm install -g jshint rollup http-server 然后cd到es-code的解压目录,运行npm install 完事运行下面的脚本启动服务 npm run server 其他脚本: npm run jshint 用jshint检查代码 npm run bundle 用rolllup打包代码 有疑问多交流,大家尽快将ES6、jshint、rollup用起来。 #### 参考资料 1. https://www.rollupjs.com/ 2. https://rollupjs.org/guide/en 3. https://github.com/rollup/rollup/wiki/Plugins