ant-design / ant-design-pro

👨🏻‍💻👩🏻‍💻 Use Ant Design like a Pro!
https://pro.ant.design
MIT License
36.47k stars 8.14k forks source link

🐛[BUG] global.less样式不起作用 #7776

Closed rodchen-king closed 3 years ago

rodchen-king commented 3 years ago

🐛 bug 描述

global.less 添加的:global{} 样式文件不生效。

📷 解决方式

umijs3 配置层迁移

cssLoader: {
    modules: {
      getLocalIdent: (context: any, localIdentName: any, localName: any) => {
        if (
          context.resourcePath.includes('node_modules') ||
          context.resourcePath.includes('ant.design.pro.less') ||
          context.resourcePath.includes('global.less')
        ) {
          return localName;
        }
        const match = context.resourcePath.match(/src(.*)/);
        if (match && match[1]) {
          const antdProPath = match[1].replace('.less', '');
          const arr = antdProPath
            .split('/')
            .map((a) => a.replace(/([A-Z])/g, '-$1'))
            .map((a) => a.toLowerCase());
          return `antd-pro${arr.join('-')}-${localName}`.replace(/--/g, '-');
        }
        return localName;
      },
    },
  },
chenshuai2144 commented 3 years ago

global.less 是不需要 global 的,可以直接写的

rodchen-king commented 3 years ago

global.less 是不需要 global 的,可以直接写的

因为我本地测试的时候,发现global里面就算不写global也没有生效,那可能是我操作的有问题吧

chenshuai2144 commented 3 years ago

可能是被覆盖了,如果不用动态换主题功能可以干掉这个插件。

rodchen-king commented 3 years ago

可能是被覆盖了,如果不用动态换主题功能可以干掉这个插件。

就是上面这部分代码看ant design pro以前的版本里有,ant design pro v5的版本里没有这个配置。是内置了吗,还是做了什么特殊的处理

chenshuai2144 commented 3 years ago

内置掉了,在 pro 的插件里