1.0.0 • Published 6 years ago
eslint-plugin-fancy-mini v1.0.0
eslint-plugin-fancy-mini
eslint plugin for fancy-mini lib.
Installation
npm install --save-dev eslint-plugin-fancy-mini
Usage
开启eslint(wepy项目)
- 根目录/wepy.config.js 中设置:
eslint: true
根目录/.eslintrc.js 中
module.exports = { root: true, parser: 'babel-eslint', parserOptions: { sourceType: 'module' }, env: { browser: true }, // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style // extends: 'standard', //注掉使用标准规则集,此时,所有内置lint规则均默认关闭 // required to lint *.wpy files plugins: [ 'html', //保留html插件,否则eslint会在<template>部分报错 'fancy-mini' //引入自定义lint插件 ], settings: { 'html/html-extensions': ['.html', '.wpy'] //将.wpy加入html后缀,避免其中的DOM部分和css部分被当成js解析 }, // add your custom rules here 'rules': { 'fancy-mini/navigate-wxapi': 'error', //配置自定义规则的警告级别:'error', 'warn', 'off' 'fancy-mini/navigate-onunload': 'error', } }
禁用规则
- 全局禁用
可在.eslintrc.js中配置自定义规则的级别:'error'-报错, 'warn'-警告, 'off'-关闭,参见上文。 局部禁用
// eslint-disable-next-line fancy-mini/navigate-wxapi wx.navigateTo({ //对此行代码不进行规则"fancy-mini/navigate-wxapi"的检查 url: url })
如上例所示,可以使用注释对下一行代码禁用指定规则。更多配置方式参见:eslint 文档。
添加规则
- 在lib/rules新建js文件,文件名即为规则名
- 编写规则,格式参见现有规则文件 或 eslint api
- 修改package.json中version字段,增大版本号并发布
- 项目中更新插件版本
- 新规则开始生效
Supported Rules
- fancy-mini/navigate-wxapi 无限层级路由策略——所有页面跳转统一使用自定义模块提供的api,而不直接调用wx/wepy提供的路由接口
- fancy-mini/navigate-onunload
无限层级路由策略——所有页面若有自定义onUnload函数,需在函数中执行父类相应钩子: super.onUnload && super.onUnload()