unplugin / unplugin-vue-components

📲 On-demand components auto importing for Vue
https://www.npmjs.com/package/unplugin-vue-components
MIT License
3.65k stars 341 forks source link

Enums that named with the word T started will be unexpectedly imported from a wrong path #733

Open polarove opened 5 months ago

polarove commented 5 months ago

Describe the bug

Prerequisites: unplugin-vue-components && unplugin-auto-import && tdesign-vue-next

When we have any enum that its name starts with the word T:

export enum THEME {
    LIGHT
}

And use it:

import { THEME } from `~`
console.log(THEME.LIGHT)

This would result in an error that something unexpectedly re-writes the import path towards tdesign-vue-next libary.

How to reproduce it:

  1. Hit the reproduction link below
  2. Run the project
  3. Check your console and keep cleanning it untill you see an Uncaught SyntaxError:
    Uncaught SyntaxError: The requested module '/node_modules/.vite/deps/tdesign-vue-next.js?v=e1b92d83' does not provide an export named 'HEME2' (at enum.ts:1:10)

Reproduction

https://stackblitz.com/edit/vitejs-vite-rbldp3?file=src%2Fenum.ts,src%2FApp.vue,package.json,src%2Fmain.ts&terminal=dev

System Info

System:
    OS: Windows 10 10.0.19045
    CPU: (12) x64 AMD Ryzen 5 3600X 6-Core Processor
    Memory: 4.46 GB / 15.95 GB
Binaries:
    Node: 20.9.0 - C:\DevTool\node\node.EXE
    Yarn: 1.22.21 - C:\DevTool\node\yarn.CMD
    npm: 10.1.0 - C:\DevTool\node\npm.CMD
    pnpm: 8.10.5 - C:\DevTool\node\pnpm.CMD
Browsers:
    Edge: Chromium (121.0.2277.83)
    Internet Explorer: 11.0.19041.3636

Used Package Manager

npm

Validations

stackblitz[bot] commented 5 months ago

Fix this issue in StackBlitz Codeflow Start a new pull request in StackBlitz Codeflow.

Sight-wcg commented 4 months ago

related #552 #505