-
Notifications
You must be signed in to change notification settings - Fork 70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
通过ant-design-pro-vue版本改过来的项目,唯独主题颜色这个功能失效了,查了两天,代码翻遍了无法解决,求大神给看看 #14
Comments
官网的ant-design-pro-vue新版本试过了吗?我看解决了一些问题 |
刚拉了最新的看了,是可以的 |
|
之前看了没有看出啥问题。更新下插件的新版本,另外看下是否是另一个类似样式覆盖问题:#15 |
我debug进到themeColorChanger.js里getCSSString方法始终获取不到样式表,这个的可能原因是什么呢?我偿试对原本项目进行debug发现这里是能获取到样式表的,问题是出现在这里,我想知道这里获取样式表的url是怎么生成的, |
@buildJava 你在使用ant-design-pro-vue的时候,是如何操作主题?意思是如何复现这个问题?我最近也在使用ant-design-pro-vue,我修改了一下ant-design-pro-vue的换肤逻辑,在app.vue就初始化了主题(原始项目是在进入登录页以后初始化的主题色),然后遇到某些组件主题没有生效的问题,我提了这个issue #15 ,原始项目因为是在进入页面以后初始化的主题,样式是没有被异步组件的样式覆盖的,如果你的情况和我的差不多,是因为改了主题初始化的位置,比如像我一样在某些异步组件还没有初始化之前就初始化主题的话,你可以打开浏览器调试界面 elements 看看head标签里面带id的style标签是否是head标签最后一个,如果不是的话,可能是被异步组件的样式给覆盖了。 |
@iota9star 非常感谢你的回答,不过我的debug时有看到带id的style标签并且是最后一个,在项目启动时ThemeColorReplacer创建这个对象时生成的theme-colors这个样式文件里的样式表是空的,导致我的主题无法切换,但是为什么是空的我没找到原因? |
@buildJava 你在ant-design-pro-vue原始主题操作部分修改了那些地方? |
@iota9star 主题这部分没有修改任何的东西,刚才我对比着两个项目,就在changeSelector这里发现那边比这边多了一个console.log(selector),然后是在css部分去掉了sourceMap:true的配置,然后竟然就行了。。。。,这个配置当时是为了看是哪个样式文件设置的 |
@buildJava 好的,能行就OK |
@iota9star 应该就是vue.config.js配置文件在css的配置里 |
是sourceMap:true的配置导致的吗? @buildJava 你用的是哪个版本,是否最新的?如果是的话,加上--theme_debug参数,再把debug文件发上来我再看下? |
你好. 我也有类似 @buildJava 的问题. 也是通过设置 通过上面的讨论. 我定位到原因为 src = assetToStr(asset);
writeFileForDebugIf(fn, src, this.extractor)
var cssSrcs = []
var CssCodeReg = options.isJsUgly ? Css_Loader_Reg_UGLY : Css_Loader_Reg_DEV;
src.replace(CssCodeReg, (match, $1) => {
cssSrcs = cssSrcs.concat(this.extractor.extractColors($1));
}); 主要原因就是Css_Loader_Reg_UGLY和Css_Loader_Reg_DEV正则匹配生成的 当 如下附件中: |
@hzsrc 请看下是不是需要修改正则或者重写实现方法 |
@ZxcSoft 你好,感谢你提供的测试文件。我用你这个文件 |
另外我又分析了一下这个 |
_tmp_app.txt
_tmp_user.txt
The text was updated successfully, but these errors were encountered: