https://uniapp.dcloud.net.cn/uniCloud/cf-functions.html#使用npm
官方文档上说node_modules文件夹会被全量上传,我在实际使用中,使用的包里有类似??、?.这样的语法,在云函数运行环境中不能正常执行,然后我本地进行了替换,本地环境测试没有问题,上传到云端后修改替换的代码没有生效,报错依然是同一个地方原始的代码;
[runSql/6A5E488D-1EB8-59E1-876B-5725017C347A/37ms/ERROR] Unexpected token '?'
/tmp/function/node_modules/mssql/lib/tedious/connection-pool.js:39
cfg.options.connectTimeout = cfg.options.connectTimeout ?? this.config.connectionTimeout ?? this.config.timeout ?? 15000
^
SyntaxError: Unexpected token '?'
at wrapSafe (internal/modules/cjs/loader.js:915:16)
at Module._compile (internal/modules/cjs/loader.js:963:27)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
2 个回复
最佳回复
DCloud_uniCloud_WYQ
文档描述有误,使用阿里云的时候node_modules会在本地安装后上传(不会使用你自己安装的),使用腾讯云的时候会在云端安装。建议不要修改node_modules内容。如果语法不支持应该对包进行降级
赵登云 - 小菜鸟
你解决了吗?我的也遇到这个问题了,代码本地没事,上传到云端不生效,页面还是原来的