Skip to content

Commit

Permalink
feat(lints): lints 插件在webpack-box中剥离出来
Browse files Browse the repository at this point in the history
  • Loading branch information
luoxue committed Dec 25, 2019
1 parent 907ef27 commit 2f9e97c
Show file tree
Hide file tree
Showing 11 changed files with 44 additions and 18 deletions.
4 changes: 2 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
## [1.0.9](https://github.com/luoxue-victor/learn_webpack/compare/v1.2.3...v1.0.9) (2019-12-24)
## [1.0.9](https://github.com/luoxue-victor/learn_webpack/compare/v1.2.3...v1.0.9) (2019-12-25)

### 🐛 Bug 修复
范围|描述|commitId
--|--|--
package | 升级插件版本| [dea53d5](https://github.com/luoxue-victor/learn_webpack/commit/dea53d5)
package | 升级插件版本| [dea53d5](https://github.com/luoxue-victor/learn_webpack/commit/dea53d5) webpack-box | 降低复杂度| [907ef27](https://github.com/luoxue-victor/learn_webpack/commit/907ef27)

### 📝 文档
范围|描述|commitId
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,15 +154,15 @@ webpack-box server:gql # graphql-server
- [CaseSensitivePaths 严格区分大小写](./packages/webpack-box/config/caseSensitivePaths.js)
- [dashboard 增加仪表盘配置](./packages/webpack-box/config/dashboard.js)
- [devServer.before 在devServer中添加中间件](./packages/webpack-box/config/devServerBefore.js)
- [eslint-loader 配置](./packages/webpack-box/config/eslintLoader.js)
- [提取 manifest](./packages/webpack-box/config/manifest.js)
- [optimization 优化配置](./packages/webpack-box/config/optimization.js)
- [样式表配置](./packages/webpack-box/config/style.js)
- [stylelint 配置](./packages/webpack-box/config/styleLintPlugin.js)
- [设置 style 全局变量](./packages/webpack-box/config/styleResourcesLoader.js)
- [多线程配置](./packages/webpack-box/config/threadLoader.js)
- [tslint 配置](./packages/webpack-box/config/tslintPlugin.js)
- [eslint-loader 配置](./packages/eslint/webpack-chain.config.js)
- [react 配置](./packages/react/webpack-chain.config.js)
- [stylelint 配置](./packages/stylelint/webpack-chain.config.js)

</details>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
module.exports = function({ injectCommand, api }) {
injectCommand(function({ program, cleanArgs, boxConfig }) {
program
.command('lint [type]')
.command('lint eslint')
.description('修复lint')
.action(async (name, cmd) => {
const options = cleanArgs(cmd)
const args = Object.assign(options, { name }, boxConfig)
require('../build/lint')(args, api)
require('./lint')({ args, api })
})
})
}
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
// [eslint-loader 配置]
module.exports = ({ config, options: { eslint: { lintOnSave = false, extensions } }, api }) => {
const path = require('path')
const eslintOptionsPath = path.join('..', 'packages', 'eslint', 'eslintOptions')
extensions = extensions || require(eslintOptionsPath).extensions(api)
extensions = extensions || require('./eslintOptions').extensions(api)
return () => {
if (!lintOnSave) return
const path = require('path')
Expand Down
12 changes: 12 additions & 0 deletions packages/stylelint/command.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
module.exports = function({ injectCommand, api }) {
injectCommand(function({ program, cleanArgs, boxConfig }) {
program
.command('lint stylelint')
.description('修复lint')
.action(async (name, cmd) => {
const options = cleanArgs(cmd)
const args = Object.assign(options, { name }, boxConfig)
require('./lint')({ args, api })
})
})
}
File renamed without changes.
12 changes: 12 additions & 0 deletions packages/tslint/command.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
module.exports = function({ injectCommand, api }) {
injectCommand(function({ program, cleanArgs, boxConfig }) {
program
.command('lint tslint')
.description('修复lint')
.action(async (name, cmd) => {
const options = cleanArgs(cmd)
const args = Object.assign(options, { name }, boxConfig)
require('./lint')({ args, api })
})
})
}
14 changes: 12 additions & 2 deletions packages/webpack-box/api/CommandAPI.js
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,22 @@ module.exports.getAllCommands = function() {
const localCwdPath = path.join(__dirname, '..', 'commands')
const localCwdNames = [...fs.readdirSync(localCwdPath)]
const cwdFns = []
const { getConfigsByName } = require('../util/getLocalConfigByPath')
localCwdNames.forEach(name => {
const cwdPath = path.join(localCwdPath, name)
cwdFns.push(require(cwdPath))
})
// cwdFns.push(...getConfigsByName('packages', 'command.config.js'))

const { getAllPluginIdOfPackageJson } = require('@pkb/shared-utils')

getAllPluginIdOfPackageJson().forEach(id => {
const command = `${id}/command.config.js`
try {
const cwd = require(command)
cwdFns.push(require(cwd))
} catch (error) {
console.log(`没有 ${command}`)
}
})
return cwdFns
}

Expand Down
2 changes: 1 addition & 1 deletion packages/webpack-box/build/base.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ module.exports = (options) => {
const config = require(pluginWebpackChainPath)
configs.push(config)
} catch (error) {
console.log(error)
console.log(`没有 ${pluginWebpackChainPath}`)
}
})

Expand Down
3 changes: 0 additions & 3 deletions packages/webpack-box/build/lint.js

This file was deleted.

3 changes: 0 additions & 3 deletions packages/webpack-box/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -74,9 +74,6 @@
"mockjs": "^1.1.0",
"mongoose": "^5.2.15",
"ora": "^4.0.3",
"pk-cli-plugin-eslint": "^1.2.2",
"pk-cli-plugin-stylelint": "^1.2.1",
"pk-cli-plugin-tslint": "^1.2.2",
"postcss-loader": "^3.0.0",
"postcss-px-to-viewport": "^1.1.1",
"preload-webpack-plugin": "^3.0.0-beta.4",
Expand Down

0 comments on commit 2f9e97c

Please sign in to comment.