Skip to content
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

resolveStyle可以指定为项目中的某个路径吗? #34

Closed
carmel opened this issue Aug 12, 2021 · 3 comments
Closed

resolveStyle可以指定为项目中的某个路径吗? #34

carmel opened this issue Aug 12, 2021 · 3 comments

Comments

@carmel
Copy link

carmel commented Aug 12, 2021

因为element-plus有些组件样式有问题,需要对其进行修改,鉴于在项目中使用!important进行覆盖感觉太繁琐。想在vite.config.js中进行以下配置:

styleImport({
    libs: [{
      libraryName: 'element-plus',
      esModule: true,
      ensureStyleFile: true,
      resolveStyle: (name) => {
        name = name.slice(3)
        // return `element-plus/packages/theme-chalk/src/${name}.scss`
        return `src/assets/css/element-plus/${name}.scss`
      },
      resolveComponent: (name) => {
        return `element-plus/lib/${name}`
      }
    }]
  })

这里,我将element-plus/packages/theme-chalk/src/${name}.scss替换成了src/assets/css/element-plus/${name}.scss,但样式没有加载出来,不知道为什么。(我已将element-plus/packages/theme-chalk/src下所有样式scss文件拷贝到src/assets/css/element-plus目录下)

@carmel
Copy link
Author

carmel commented Aug 13, 2021

可以修改一下resolveNodeModules函数,加一个参数modules

export function resolveNodeModules(root: string, modules: string,  ...dir: string[]) {
  return normalizePath(path.join(root, modules === 'app' ? 'src' : 'node_modules', ...dir));
}

@carmel carmel closed this as completed Aug 19, 2021
@helianthuswhite
Copy link

可以直接加 .. 就好了,path.join 会处理的。
resolveStyle: (name) => { return ../src/assets/theme/${name}.css; }

@carmel
Copy link
Author

carmel commented Aug 22, 2021

可以直接加 .. 就好了,path.join 会处理的。
resolveStyle: (name) => { return ../src/assets/theme/${name}.css; }

你的思路更简单 !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants