Skip to content

Commit

Permalink
fix: 优化70%
Browse files Browse the repository at this point in the history
  • Loading branch information
galaxy-s10 committed Oct 1, 2022
1 parent 6a004ef commit 4acc631
Show file tree
Hide file tree
Showing 1,619 changed files with 2,346 additions and 2,307 deletions.
52 changes: 34 additions & 18 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -70,13 +70,7 @@ module.exports = {
// 貌似代替不了eslint cli接口的--ext
// extraFileExtensions: ['.js', '.jsx', '.ts', '.tsx', '.vue'],
},
plugins: [
// 'vue',
// '@typescript-eslint',
// 'prettier',
// 'plugin:prettier/recommended', // error!!!巨坑,这个写错位置了,应该是写在extends里面的!!!!
// '@typescript-eslint/tslint',
],
plugins: ['import'],
/**
* overrides可共享配置中的配置不再覆盖.eslintrc文件中的用户设置
* 在 ESLint v6.0.0 中,父配置始终优先于扩展配置,即使是overrides块。
Expand All @@ -102,13 +96,13 @@ module.exports = {
},
},
],
/**
* rules优先级最高,会覆盖上面的
*/
// rules优先级最高,会覆盖上面的
rules: {
// // 0 => off
// // 1 => warn
// // 2 => error
/**
* 0 => off
* 1 => warn
* 2 => error
*/
/**
* plugins添加prettier后,还要开启这个才会把prettier的规则当做eslint来做校验。
* plugins没有添加prettier,直接开启这个会报错Definition for rule 'prettier/prettier' was not found。
Expand Down Expand Up @@ -163,24 +157,46 @@ module.exports = {
'arrow-body-style': [1, 'as-needed'], // 在可以省略的地方强制不使用大括号(默认)
'global-require': 1, // 此规则要求所有调用require()都在模块的顶层,类似于 ES6import和export语句,也只能在顶层发生。
'no-shadow': 0,
'import/prefer-default-export': 0, // 当模块只有一个导出时,更喜欢使用默认导出而不是命名导出。
'no-undef': 0, // https://github.com/typescript-eslint/typescript-eslint/issues/2528#issuecomment-689369395
'no-param-reassign': 0,
'func-names': 0, // 不能是匿名函数
'import/no-extraneous-dependencies': 0, // 开发/生产依赖混乱
'spaced-comment': 2, // 此规则将在注释//或开始后强制执行间距的一致性/*
'no-underscore-dangle': 0, // Unexpected dangling '_' in '_xxx'
'import/extensions': 0, // 省略导入源路径中的文件扩展名
'import/no-unresolved': 0, // 导入资源的时候没有后缀会报这个错,这里关掉他
'vars-on-top': 0, // 要求var声明位于其作用域的顶部
'prefer-rest-params': 0, // 此规则旨在标记arguments变量的使用
'import/newline-after-import': 1, // 强制在最后一个顶级导入语句或 require 调用之后有一个或多个空行
'prefer-const': 1, // xxx is never reassigned. Use 'const' instead,此规则旨在标记使用let关键字声明的变量
'no-unused-vars': 1, // xxx is assigned a value but never used,此规则旨在消除未使用的变量、函数和函数参数
'no-var': 1, // Unexpected var, use let or const instead,该规则旨在阻止使用var或鼓励使用const或let代替。
'no-console': process.env.NODE_ENV !== 'production' ? 0 : 2, // 此规则不允许调用console对象的方法。
'no-redeclare': 2, // 此规则旨在消除在同一范围内具有多个声明的变量。
'no-unused-expressions': [2, { allowShortCircuit: true }], // 期望一个赋值或函数调用,却看到了一个表达式,允许&&
'array-callback-return': [2, { allowImplicit: false }], // expects a return value from arrow function.期望箭头函数的返回值。

// eslint-plugin-import插件
'import/order': [
'error',
{
groups: [
'builtin',
'external',
'internal',
['sibling', 'parent'],
'index',
'object',
'type',
],
'newlines-between': 'always', // 强制或禁止导入组之间的新行:
// 根据导入路径按字母顺序对每个组内的顺序进行排序
alphabetize: {
order: 'asc' /* 按升序排序。选项:['ignore', 'asc', 'desc'] */,
caseInsensitive: false /* 忽略大小写。选项:[true, false] */,
},
},
],
'import/newline-after-import': 0, // 强制在最后一个顶级导入语句或 require 调用之后有一个或多个空行
'import/no-extraneous-dependencies': 0, // 禁止导入未在package.json中声明的外部模块,开发/生产依赖混乱(eslint认为只有path,fs这些node内置api才是开发依赖,其余的都是生产依赖)
'import/prefer-default-export': 0, // 当模块只有一个导出时,更喜欢使用默认导出而不是命名导出。
'import/extensions': 0, // 确保在导入路径中一致使用文件扩展名
'import/no-unresolved': 0, // 不能解析带别名的路径的模块,但实际上是不影响代码运行的。找不到解决办法,只能关掉了。
},
};
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@ dist
.eslintignore
.browserlistrc
.editorconfig
*.ejs
2 changes: 1 addition & 1 deletion babel.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,6 @@ module.exports = {
// },
// "aaax",
// ],
// "transform-vue-jsx",
'@babel/plugin-syntax-jsx',
],
};
13 changes: 11 additions & 2 deletions build-tools/constant.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,16 @@
const path = require('path');

// path.resolve里的参数不管结尾带不带/,最终处理的路径最后结尾都不带/
// 即path.resolve(__dirname, '../dist')和path.resolve(__dirname, '../dist/'),最终生成的路径是/xx/xx/dist
module.exports = {
porjectRootDir: path.resolve(__dirname, '../'),
distDir: path.resolve(__dirname, '../dist'),
iconsSvgDir: path.resolve(__dirname, '../packages/icons-svg/dist/'),
iconsVueDir: path.resolve(__dirname, '../packages/icons-vue/dist/'),
iconsSvgDistDir: path.resolve(__dirname, '../packages/icons-svg/dist'),
iconsSvgEntryName: 'index.js',
iconsSvgEntryPath: path.resolve(__dirname, '../packages/icons-svg'),
iconsSvgToAsnDir: path.resolve(__dirname, '../packages/icons-svg/asn'),
iconsVueDistDir: path.resolve(__dirname, '../packages/icons-vue/dist'),
iconsVueIconsPath: path.resolve(__dirname, '../packages/icons-vue/icons'),
iconsVueEntryPath: path.resolve(__dirname, '../packages/icons-vue'),
iconsVueEntryName: 'index.js',
};
237 changes: 0 additions & 237 deletions build-tools/gulpfile copy.js

This file was deleted.

Loading

0 comments on commit 4acc631

Please sign in to comment.