使用hbuilder创建项目
引用uni-ui插件
在页面中引用任意组件
qq小程序发布
在qq开发者工具中点击预览
真机扫描即可复线

- 发布:2024-09-04 15:16
- 更新:2024-09-14 16:43
- 阅读:213
【报Bug】QQ小程序发布模式下,引用组件真机报错Lifetime Method Error #attached
产品分类: uniapp/小程序/QQ
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: macos 14.5
第三方开发者工具版本号: 0.71.2402220.7_darwin_x64 (4606.81)
基础库版本号: 1.71.6
项目创建方式: CLI
CLI版本号: 3.0.0-alpha-4020620240822002
操作步骤:
预期结果:
预期不报错可正常运行
预期不报错可正常运行
实际结果:
报错信息如下:
Lifetime Method Error
attached
ReferenceError: T is not defined
报错信息如下:
Lifetime Method Error
attached
ReferenceError: T is not defined
bug描述:
无论用HBuilder还是CLI创建的项目,引用组件后发行模式下真机预览就会报错。模拟器上正常。
现在无法在QQ小程序中使用发行模式
当前例子使用的是分页组件,使用uni-ui也会报错。
报错信息如下:
Lifetime Method Error
attached
ReferenceError: T is not defined


这是qq小程序编译器开启es6转es5时,用babel转义for in 循环时出现bug,可以在qq小程序社区反馈此问题。
在uniapp这边提前进行es6转es5 转码来处理此问题。项目目录下新增vite.config.js和babel.config.js
import {
defineConfig
} from "vite";
import uni from "@dcloudio/vite-plugin-uni";
import babel from '@rollup/plugin-babel';
export default defineConfig({
plugins: [
uni(),
babel({
babelHelpers: 'bundled',
presets: ['@babel/preset-env'],
extensions: ['.js', '.jsx', '.ts', '.tsx'],
}),
],
});
babel.config.js
module.exports = function() {
return {
"presets": [
[
"@babel/preset-env",
{
"targets": {
"ie": "11"
}
}
]
]
}
}