Skip to content

Commit

Permalink
fix: 修复开发模式样式不更新
Browse files Browse the repository at this point in the history
  • Loading branch information
罗学 committed Apr 8, 2021
1 parent 4057d9b commit 729bbd5
Show file tree
Hide file tree
Showing 28 changed files with 673 additions and 344 deletions.
820 changes: 623 additions & 197 deletions package-lock.json

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,8 @@
"devDependencies": {
"@pkb/cli": "^1.4.7",
"@pkb/plugin-react": "^1.4.5",
"@pkb/webpack-box": "^1.4.6"
"@pkb/webpack-box": "^1.4.6",
"style-loader": "^2.0.0"
},
"bugs": {
"url": "https://github.com/luoxue-victor/learn_webpack/issues"
Expand Down
16 changes: 0 additions & 16 deletions packages/react/template/__test__/__snapshots__/demo.test.js.snap

This file was deleted.

18 changes: 0 additions & 18 deletions packages/react/template/__test__/demo.test.js

This file was deleted.

2 changes: 2 additions & 0 deletions packages/webpack-box/build/dev.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ module.exports = function (options) {
const port = options.port || 8080
const publicPath = options.publicPath || '/'

config.target('web')
config.devServer
.quiet(true)
.hot(true)
Expand All @@ -21,6 +22,7 @@ module.exports = function (options) {
}

const compiler = webpack(config.toConfig())

// 拿到 devServer 参数
const chainDevServer = compiler.options.devServer
const server = new WebpackDevServer(
Expand Down
1 change: 1 addition & 0 deletions packages/webpack-box/commands/build.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ module.exports = function({ injectCommand }) {
.option('-r, --report', '打包分析报告')
.option('-d, --dll', '合并差分包')
.action(async (name, cmd) => {
process.env.NODE_ENV = 'production'
const options = cleanArgs(cmd)
const args = Object.assign(options, { name }, boxConfig)
if (!name && boxConfig.pages) {
Expand Down
2 changes: 1 addition & 1 deletion packages/webpack-box/config/base.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ module.exports = ({ config, webpackVersion, resolve, options }) => {
})
// 模式 "production" | "development" | "none"
// .mode(process.env.NODE_ENV) 等价下面
.set('mode', 'development') // process.env.NODE_ENV
.set('mode', process.env.NODE_ENV) // process.env.NODE_ENV
// 出口
.output
.path(resolve(output))
Expand Down
25 changes: 16 additions & 9 deletions packages/webpack-box/config/style.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
// [样式表配置]
const MiniCssExtractPlugin = require('mini-css-extract-plugin');

module.exports = ({ config, options = {} }) => {
const rootOptions = options
const getAssetPath = require('../util/getAssetPath')
Expand Down Expand Up @@ -45,20 +47,25 @@ module.exports = ({ config, options = {} }) => {
const cssLoaderOptions = Object.assign({
sourceMap
}, loaderOptions.css)
if (extract) {

const isDev = process.env.NODE_ENV === 'development'

console.log('========isdev========',isDev)

if (isDev) {
rule
.use('extract-css-loader')
.loader(require('mini-css-extract-plugin').loader)
.loader('style-loader')
.options({
publicPath: cssPublicPath
injectType: 'styleTag'
})
} else {
// rule
// .use('vue-style-loader')
// .loader(require.resolve('vue-style-loader'))
// .options({
// sourceMap
// })
rule
.use('extract-css-loader')
.loader(MiniCssExtractPlugin.loader,)
.options({
publicPath: cssPublicPath
})
}
if (isCssModule) {
cssLoaderOptions.modules = {
Expand Down
2 changes: 1 addition & 1 deletion packages/webpack-box/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@
"sass": "^1.23.7",
"sass-loader": "^8.0.0",
"semver": "^7.1.1",
"style-loader": "^1.0.0",
"style-loader": "^2.0.0",
"style-resources-loader": "^1.3.2",
"stylus-loader": "^3.0.2",
"thread-loader": "^2.1.3",
Expand Down
2 changes: 1 addition & 1 deletion src/main.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// 加载react
if (process.env.REACT === 'react') {
require('../packages/react/template')
require('../template/webpack/main.js')
}
Empty file added template/gulp/index.js
Empty file.
Empty file added template/rollup/index.js
Empty file.
6 changes: 6 additions & 0 deletions template/webpack/main.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
// 加载react
import React from 'react'
import ReactDom from 'react-dom'
import { App } from './src/demo'

ReactDom.render(<App/>, document.getElementById('app'))
11 changes: 11 additions & 0 deletions template/webpack/src/demo.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import React from 'react'
import './index.scss'

export const App = () => {
return (
<div className="react-box">
<h1>React Demo</h1>
<img className="react-logo" src={require('./assets/my-pub.jpeg').default} alt=""/>
</div>
)
}
7 changes: 0 additions & 7 deletions template/webpack/src/globalstyle/index.less

This file was deleted.

8 changes: 0 additions & 8 deletions template/webpack/src/globalstyle/index.scss

This file was deleted.

9 changes: 9 additions & 0 deletions template/webpack/src/index.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
.react-box {
width: 100%;
text-align: center;
}

.react-logo {
width: 200px;
height: 200px;
}
8 changes: 0 additions & 8 deletions template/webpack/src/main.js

This file was deleted.

12 changes: 0 additions & 12 deletions template/webpack/src/ssr.jsx

This file was deleted.

4 changes: 0 additions & 4 deletions template/webpack/src/style/app.css

This file was deleted.

8 changes: 0 additions & 8 deletions template/webpack/src/style/index.css

This file was deleted.

5 changes: 0 additions & 5 deletions template/webpack/src/style/index.js

This file was deleted.

6 changes: 0 additions & 6 deletions template/webpack/src/style/index.less

This file was deleted.

9 changes: 0 additions & 9 deletions template/webpack/src/style/index.postcss

This file was deleted.

5 changes: 0 additions & 5 deletions template/webpack/src/style/index.scss

This file was deleted.

12 changes: 0 additions & 12 deletions template/webpack/src/treeShaking.js

This file was deleted.

6 changes: 0 additions & 6 deletions template/webpack/src/typescript/Foo.ts

This file was deleted.

10 changes: 0 additions & 10 deletions template/webpack/src/typescript/index.ts

This file was deleted.

0 comments on commit 729bbd5

Please sign in to comment.