iview / iview-project

This project is build for Vue.js 2 + vue-router + webpack2 + iView 3
MIT License
839 stars 389 forks source link

样式不能热更新 #53

Closed wushufen closed 5 years ago

wushufen commented 6 years ago

如题。 有看到其它 已关闭的 issue ,却没给出解决方案 https://github.com/iview/iview-project/issues/25 用 iView Cli 生成的项目也是这样子

还不如用 vue cli

wushufen commented 6 years ago

用 cli 本来就是想 开箱即用,结果难用死

wushufen commented 6 years ago

build 生成的 index_pod.html 没有放在 dist 里,打包起来不方便,部署还要改名字,真不知道怎么想的

kimoziiiii commented 6 years ago

vue-loader options 里面的loaders改成下面的就可以了

{
                test: /\.vue$/,
                use: [
                    {
                        loader: 'vue-loader',
                        options: {
                            loaders: {
                                css: 'vue-style-loader!css-loader',
                                less: 'vue-style-loader!css-loader!less-loader'
                            },
                            postLoaders: {
                                html: 'babel-loader'
                            }
                        }
                    },
                    {
                        loader: 'iview-loader',
                        options: {
                            prefix: false
                        }
                    },
                ]
            }
janamam commented 6 years ago

vue-loader options 里面的loaders改成下面的就可以了

{
                test: /\.vue$/,
                use: [
                    {
                        loader: 'vue-loader',
                        options: {
                            loaders: {
                                css: 'vue-style-loader!css-loader',
                                less: 'vue-style-loader!css-loader!less-loader'
                            },
                            postLoaders: {
                                html: 'babel-loader'
                            }
                        }
                    },
                    {
                        loader: 'iview-loader',
                        options: {
                            prefix: false
                        }
                    },
                ]
            }

缺了个!autoprefixer-loader

cmh2016 commented 5 years ago

可以关闭bug了。 我找到原因了,它启用了一个extract-text-webpack-plugin插件,用于抽离css,减少style。样式热加载对此插件合并后的css文件无效。这个插件一般用于build时优化项目。具体详见https://github.com/webpack-contrib/extract-text-webpack-plugin。 解决方法:在webpack.dev.config.js文件中禁止使用此插件。已亲测,下面是详细配置: new ExtractTextPlugin({ filename: '[name].css', allChunks: true, disable:true //开发环境下禁止抽离css文件,否则无法使用热更新 }),

wushufen commented 5 years ago

已弃坑,自己写