[LayaAir3]LayaAirIDE 3.2.0版本,打包时勾选压缩js时,运行打包后的资源会报错
LayaAirIDE 3.2.0版本,和最新的 LayaAir IDE 3.1.6 打包时勾选压缩js时,运行时会报错? 不勾选压缩js,则能正常运行。
我一直使用的LayaAir IDE 3.1.2 选择压缩js,是能正常运行的,我又下载了最新的LayaAir IDE 3.1.6的版本,的确是也会出错的。麻烦看看是改了什么导致呢?
经过反复测试。发现node_modules/@noble/hashes/esm/sha3.js 里面在=后面包含/* @__PURE__ */ 这样的注释,会导致压缩js后,一些代码丢失。
当把这个库的sha3.js 的 /* @__PURE__ */ 全部去掉后,则能打包正常。 麻烦修复一下这个问题。
选择压缩js的方式打包,运行后报错信息:
bundle-5e969.js:1 Uncaught TypeError: Tr is not a function
at node_modules/@noble/hashes/esm/sha3.js (bundle-5e969.js:1)
at bundle-5e969.js:1
at node_modules/viem/_esm/utils/hash/keccak256.js (bundle-5e969.js:1)
at bundle-5e969.js:1
at bundle-5e969.js:1
at bundle-5e969.js:1
node_modules/@noble/hashes/esm/sha3.js @ bundle-5e969.js:1
(匿名) @ bundle-5e969.js:1
node_modules/viem/_esm/utils/hash/keccak256.js @ bundle-5e969.js:1
(匿名) @ bundle-5e969.js:1
(匿名) @ bundle-5e969.js:1
(匿名) @ bundle-5e969.js:1
laya.core-90107.js:1 Error loading Loading.ls:
Error: unknown type 'xmaaYG8AQ1yC07pr_JvyPA'
(匿名) @ laya.core-90107.js:1
Promise.then(异步)
load @ laya.core-90107.js:1
open @ laya.core-90107.js:1
(匿名) @ index-e1723.js:52
Promise.then(异步)
(匿名) @ index-e1723.js:48
(匿名) @ index-e1723.js:61
laya.core-90107.js:1 Uncaught (in promise) TypeError: Cannot read property '_is3D' of undefined
at laya.core-90107.js:1
具体发送问题的库:
我一直使用的LayaAir IDE 3.1.2 选择压缩js,是能正常运行的,我又下载了最新的LayaAir IDE 3.1.6的版本,的确是也会出错的。麻烦看看是改了什么导致呢?
经过反复测试。发现node_modules/@noble/hashes/esm/sha3.js 里面在=后面包含/* @__PURE__ */ 这样的注释,会导致压缩js后,一些代码丢失。
当把这个库的sha3.js 的 /* @__PURE__ */ 全部去掉后,则能打包正常。 麻烦修复一下这个问题。
选择压缩js的方式打包,运行后报错信息:
bundle-5e969.js:1 Uncaught TypeError: Tr is not a function
at node_modules/@noble/hashes/esm/sha3.js (bundle-5e969.js:1)
at bundle-5e969.js:1
at node_modules/viem/_esm/utils/hash/keccak256.js (bundle-5e969.js:1)
at bundle-5e969.js:1
at bundle-5e969.js:1
at bundle-5e969.js:1
node_modules/@noble/hashes/esm/sha3.js @ bundle-5e969.js:1
(匿名) @ bundle-5e969.js:1
node_modules/viem/_esm/utils/hash/keccak256.js @ bundle-5e969.js:1
(匿名) @ bundle-5e969.js:1
(匿名) @ bundle-5e969.js:1
(匿名) @ bundle-5e969.js:1
laya.core-90107.js:1 Error loading Loading.ls:
Error: unknown type 'xmaaYG8AQ1yC07pr_JvyPA'
(匿名) @ laya.core-90107.js:1
Promise.then(异步)
load @ laya.core-90107.js:1
open @ laya.core-90107.js:1
(匿名) @ index-e1723.js:52
Promise.then(异步)
(匿名) @ index-e1723.js:48
(匿名) @ index-e1723.js:61
laya.core-90107.js:1 Uncaught (in promise) TypeError: Cannot read property '_is3D' of undefined
at laya.core-90107.js:1
具体发送问题的库:
没有找到相关结果
已邀请:
2 个回复
谷主
赞同来自:
解决方案关闭terser的自动删除未引用的变量功能(compress: { unused: false })。但目前IDE没有开放这个选项,所以只能先不勾选脚本压缩,然后自行去压缩bundle.js。后续版本IDE会加上这个开关让用户选择。
谷主
赞同来自: