From d2eb3ee7c1ae1be2cca343ecdcb7ee1de19c0a38 Mon Sep 17 00:00:00 2001 From: Sight-wcg <1453017105@qq.com> Date: Fri, 27 May 2022 11:41:11 +0800 Subject: [PATCH] fix(layui-vue): resolve layui-vue style dir correctly (#388) --- src/core/resolvers/layui-vue.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/core/resolvers/layui-vue.ts b/src/core/resolvers/layui-vue.ts index 56fc60ab..160e6adf 100644 --- a/src/core/resolvers/layui-vue.ts +++ b/src/core/resolvers/layui-vue.ts @@ -1,5 +1,4 @@ import type { ComponentInfo, ComponentResolver, SideEffectsInfo } from '../../types' -import { camelCase } from '../utils' const matchComponents = [ { @@ -100,6 +99,10 @@ const layerRE = /^(layer|LayLayer)$/ const iconsRE = /^([A-Z][\w]+Icon|LayIcon)$/ let libName = '@layui/layui-vue' +function lowerCamelCase(str: string) { + return str.charAt(0).toLowerCase() + str.slice(1) +} + function getSideEffects(importName: string, options: LayuiVueResolverOptions): SideEffectsInfo | undefined { const { importStyle = 'css' } = options if (!importStyle) @@ -108,7 +111,7 @@ function getSideEffects(importName: string, options: LayuiVueResolverOptions): S if (libName !== '@layui/layui-vue') return `${libName}/lib/index.css` - let styleDir: string | undefined = camelCase(importName.slice(3)) // LayBackTop -> backTop + let styleDir: string | undefined = lowerCamelCase(importName.slice(3)) // LayBackTop -> backTop for (const item of matchComponents) { if (item.pattern.test(importName)) { styleDir = item.styleDir @@ -136,7 +139,7 @@ function resolveComponent(importName: string, options: LayuiVueResolverOptions): name = importName libName = '@layui/layer-vue' } - else if (importName.match(layuiRE)) { + else if (importName.match(layuiRE) && !importName.match(iconsRE)) { name = importName libName = '@layui/layui-vue' }