skyline模式下发布正式版小程序 uni-app worklet代码不支持

skyline模式下发布正式版小程序 uni-app worklet代码不支持

操作步骤:

  • 运行附件,点击按钮

预期结果:

  • 正常页面跳转

实际结果:

  • 黑屏

bug描述:

  • skyline模式下,发布到正式版,worklet编译中被删除了(直接运行到小程序没问题),下面有示例代码

bug文件

项目信息 详情
产品分类 uniapp/小程序/微信
PC开发环境操作系统 Windows
PC开发环境操作系统版本号 win10 LSTC 2021
HBuilderX类型 正式
HBuilderX版本号 4.75
第三方开发者工具版本号 1.06.2504010
基础库版本号 3.8.10
项目创建方式 HBuilderX

更多关于skyline模式下发布正式版小程序 uni-app worklet代码不支持的实战教程也可以访问 https://www.itying.com/category-93-b0.html

12 回复

试试这样配置 vite.config.js 文件
import { defineConfig } from ‘vite’
import uni from ‘@dcloudio/vite-plugin-uni’

// https://vitejs.dev/config/
export default defineConfig({
build: {
// minify: ‘esbuild’,
// esbuild: {
// // 保留worklet关键字
// keepNames: true
// }
minify: ‘terser’,
terserOptions: {
compress: {
directives: false,
},
},
},
plugins: [
uni()
],
})

更多关于skyline模式下发布正式版小程序 uni-app worklet代码不支持的实战教程也可以访问 https://www.itying.com/category-93-b0.html


你发行模式下有这个警告吗?

处理好了吗

没发现这个警告

你开启 编译 worklet 代码 这个选项了吗?我开启了之后就是正常的

要发行模式,勾选过了worklet了,我的确实没有编译到,具体的编译代码是 “use strict”; const e = require("./vendor.js"); exports.registerFade = () => { e.wx$1.router.addRouteBuilder(“fade”, (e => { const { primaryAnimation: a, secondaryAnimation: i } = e; return { handlePrimaryAnimation: () => ({ opacity: a.value }), handlePreviousPageAnimation: () => ({ opacity: 1 - a.value }), opaque: !0, transitionDuration: 500 } })) }; 缺了 “worklet”标识的

回复 李漂泊: 我就是发行模式

我也遇到这个问题,在发布正式版本后’worklet’标识被删除

你开启了 编译 worklet 代码 吗?

回复 DCloud_UNI_JBB: 是HbuilderX在点击发布之后,代码中的’worklet’标识被删除。和微信小程序开发者工具的编译worklet代码选项无关。

回复 3***@qq.com: 发个demo

同样的问题,改了一下terser压缩的配置 // vue.config.js
configureWebpack: config => {
if (process.env.NODE_ENV === ‘production’) {
config.optimization.minimizer[0].options.terserOptions.compress.directives = false
}
}

回到顶部