晨曦月
晨曦月
  • 发布:2025-07-10 14:52
  • 更新:2025-07-10 16:47
  • 阅读:63

请教一下 在common.js使用export default所有方法,但是在编译到安卓端会报错

分类:uni-app x

common.js
export function clone<T>(obj : T) : T {
return JSON.parse(JSON.stringify(obj)) as T
}

export default{clone}  

想在文件直接引入
import common from './common.uts';
然后common.clone。

H5可以用但是移动端报错,

2025-07-10 14:52 负责人:无 分享
已邀请:
DCloud_UNI_JBB

DCloud_UNI_JBB

您好,麻烦发下完整的可复现demo

  • 晨曦月 (作者)

    下面贴了demo,目前4.75版本 H5编译可行,安卓端编译报错

    2025-07-10 15:17

晨曦月

晨曦月 (作者)

export function clone<T>(obj : T) : T {  
    return JSON.parse(JSON.stringify(obj)) as T  
}  
export default{  
  clone  
}
 import common from '@/pages/common/common.uts';  
console.log(common)  
 let obj:UTSJSONObject = {a:1,b:'2',c:[5,6,7]};  
 console.log(obj)  
console.log(common.clone(obj))
  • DCloud_UNI_JBB

    import * as common from './util' 这样试试有没有问题

    2025-07-10 15:49

  • 晨曦月 (作者)

    回复 DCloud_UNI_JBB: 还是不可以,安卓端还是会报错 ‌⁠error: Function invocation 'clone(...)' expected‌

    2025-07-10 15:57

DCloud_UNI_JBB

DCloud_UNI_JBB

我是这样写的,你在你那试试有没有问题

  • 晨曦月 (作者)

    我原来是选项式,现在按照你截图重新写了个组合式,H5可以编译通过,但是执行a方法会报错common.clone is not a function,修改引入方式就可以了。安卓还是会报错,和原来一样的报错。

    2025-07-10 16:20

  • DCloud_UNI_JBB

    回复 晨曦月: 我这样的写法app和h5都是正常的

    2025-07-10 16:21

  • 晨曦月 (作者)

    回复 DCloud_UNI_JBB: 我现在代码和你的截图一样的,但是安卓编译过不去,H5的可以。而且你截图上,H5的运行不对吧,方法使用应该是common.default.clone()了,common.clone应该找不到

    2025-07-10 16:28

  • DCloud_UNI_JBB

    回复 晨曦月: 我这样写h5跑的起来,你要不先用 export function clone,先别用 export default { clone }

    2025-07-10 16:37

  • DCloud_UNI_JBB

    回复 DCloud_UNI_JBB: 你方便发个完整的demo吗?我试试你的代码

    2025-07-10 16:38

  • 晨曦月 (作者)

    回复 DCloud_UNI_JBB: 目前我却确实是单独引入的 export function clone 比较费劲就是。demo文件我提交一下

    2025-07-10 16:44

晨曦月

晨曦月 (作者)

demo

晨曦月

晨曦月 (作者)

demo

要回复问题请先登录注册