TS2305: Module ‘“../../node_modules/vue/dist/vue“‘ has no exported member ‘ref‘.

当在Vue3项目中遇到TS2305错误,提示模块缺少成员如'ref'时,问题可能源于TypeScript版本不兼容。即使升级Vue版本无效,更新TypeScript到4.3.5版本可以解决该问题。此问题在StackOverflow上有相似案例并得到了确认。

项目场景:

VUE3 中 报TS2305: Module ‘"…/…/node_modules/vue/dist/vue"’ has no exported member ‘ref’.

问题描述:

TS2305: Module ‘"…/…/node_modules/vue/dist/vue"’ has no exported member ‘X’
vue3中所有的组件引入都报错,提示方法模块不存在


原因分析:

最开始以为是vue版本不对,从vue3.0.0升级到最新的vue3.2.20 依旧报错。
后面在stackOverflow 上找到同样的问题才发现原因是typescript版本的问题。
昨天npm i 更新了插件的版本,新的版本和typescript3.9.3版本不兼容导致的问题。更新为typecript4.3.5版本就解决问题了。

> stack Overflow上的解决方案

在这里插入图片描述


解决方案:

npm i typescript@4.3.5
'default' is not exported by node_modules/xlsx/xlsx.mjs, imported by src/views/pms/execute-history/index.vue?vue&type=script&setup=true&name=ExecuteHistory&lang.ts file: D:/QFProject/pms/ui/src/views/pms/execute-history/index.vue?vue&type=script&setup=true&name=ExecuteHistory&lang.ts:13:0 11: const _hoisted_8 = { class: "report-footer" } 12: 13: import XLSX from 'xlsx' ^ 14: import Divider from '@/views/pms/tool-modules/divider.vue'; 15: import {cloneDeep as _cloneDeep} from "lodash"; error during build: Error: 'default' is not exported by node_modules/xlsx/xlsx.mjs, imported by src/views/pms/execute-history/index.vue?vue&type=script&setup=true&name=ExecuteHistory&lang.ts at error (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:1858:30) at Module.error (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:12429:16) at Module.traceVariable (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:12788:29) at ModuleScope.findVariable (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:11440:39) at FunctionScope.findVariable (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:6372:38) at ChildScope.findVariable (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:6372:38) at FunctionScope.findVariable (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:6372:38) at ChildScope.findVariable (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:6372:38) at ReturnValueScope.findVariable (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:6372:38) at ChildScope.findVariable (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:6372:38) at ReturnValueScope.findVariable (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:6372:38) at ChildScope.findVariable (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:6372:38) at MemberExpression.bind (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:8601:49) at CallExpression.bind (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:5269:23) at CallExpression.bind (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:8935:15) at VariableDeclarator.bind (file:///D:/QFProject/pms/ui/node_modules/rollup/dist/es/shared/rollup.js:5269:23)
05-30
拷贝 mars3d-cesium 库失败 [Error: ENOENT: no such file or directory, stat 'node_modules/mars3d/dist/img'] { errno: -2, code: 'ENOENT', syscall: 'stat', path: 'node_modules/mars3d/dist/img' } error during build: RollupError: node_modules/.pnpm/mars3d-space@3.10.2/node_modules/mars3d-space/mars3d-space.js (12:7): "default" is not exported by "mars3d?commonjs-external", imported by "node_modules/.pnpm/mars3d-space@3.10.2/node_modules/mars3d-space/mars3d-space.js". file: /builds/lafss/lafss-operator-vue3/node_modules/.pnpm/mars3d-space@3.10.2/node_modules/mars3d-space/mars3d-space.js:12:7 10: import { __module as mars3dSpaceModule } from "\u0000/builds/lafss/lafss-operator-vue3/node_modules/.pnpm/mars3d-spac... 11: var mars3dSpace = mars3dSpaceModule.exports; 12: import require$$0 from "\u0000mars3d?commonjs-external"; ^ 13: 14: (function (module, exports) { at getRollupError (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/parseAst.js:396:41) at error (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/parseAst.js:392:42) at Module.error (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:15593:16) at Module.traceVariable (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:16042:29) at ModuleScope.findVariable (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:13825:39) at ChildScope.findVariable (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:5288:38) at FunctionScope.findVariable (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:5288:38) at FunctionBodyScope.findVariable (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:5288:38) at ChildScope.findVariable (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:5288:38) at FunctionScope.findVariable (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:5288:38) at FunctionBodyScope.findVariable (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:5288:38) at Identifier.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:5071:40) at LogicalExpression.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2658:23) at CallExpression.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2654:28) at CallExpression.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:11289:15) at ConditionalExpression.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2658:23) at ExpressionStatement.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2658:23) at BlockStatement.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2654:28) at FunctionExpression.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2658:23) at CallExpression.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2658:23) at CallExpression.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:11289:15) at ExpressionStatement.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2658:23) at BlockStatement.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2654:28) at FunctionExpression.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2658:23) at CallExpression.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2658:23) at CallExpression.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:11289:15) at ExpressionStatement.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2658:23) at Program.bind (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:2654:28) at Module.bindReferences (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:15572:18) at Graph.sortModules (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:21101:20) at Graph.build (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:21004:14) at async file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:21692:13 at async catchUnfinishedHookActions (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:21158:16) at async rollupInternal (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/rollup@4.27.4/node_modules/rollup/dist/es/shared/node-entry.js:21687:5) at async build (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/vite@5.1.4_@types+node@20.17.9_less@4.4.0_sass@1.81.0_terser@5.36.0/node_modules/vite/dist/node/chunks/dep-jDlpJiMN.js:66928:18) at async CAC.<anonymous> (file:///builds/lafss/lafss-operator-vue3/node_modules/.pnpm/vite@5.1.4_@types+node@20.17.9_less@4.4.0_sass@1.81.0_terser@5.36.0/node_modules/vite/dist/node/cli.js:842:9)
最新发布
09-18
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值