群山艳阳
群山艳阳
  • 发布:2026-02-02 18:33
  • 更新:2026-02-02 20:51
  • 阅读:253

uniapp cli 升级问题

分类:uni-app

reportJSException >>>> exception function:createInstanceContext, exception:white screen cause create instanceContext failed,check js stack ->Uncaught ReferenceError: require$$0 is not defined
at (app-service.js:26:892065)

项目升级为 4.8.7之后, 报错

2026-02-02 18:33 负责人:无 分享
已邀请:
[已删除]

[已删除]

看一下 app-service.js:26 的代码是什么,问一下 ai,如果不能解决把规律和定位的问题发出来。如果你认为是 bug,你需要提供复现工程,说明 HBuilderX 版本、vue 版本和操作步骤,提供更多信息,有助于定位和解答你的问题。

  • 群山艳阳 (作者)

    Hbuilder版本是4.8.7; 项目运行时环境是4.2.4(我更新为4.8.7也不行);

    2026-02-03 10:10

  • 群山艳阳 (作者)

    import { resolve } from 'node:path';

    import process from 'node:process';

    import { ConfigEnv, defineConfig, loadEnv } from 'vite'

    import uni from '@dcloudio/vite-plugin-uni'

    import tailwindcss from 'tailwindcss'

    import autoprefixer from 'autoprefixer'

    import postcssRemToResponsivePixel from 'postcss-rem-to-responsive-pixel'

    import postcssWeappTailwindcssRename from 'weapp-tailwindcss-webpack-plugin/postcss'

    import vwt from 'weapp-tailwindcss-webpack-plugin/vite'


    const isH5 = process.env.UNI_PLATFORM === 'h5'

    const isApp = process.env.UNI_PLATFORM === 'app'

    const weappTailwindcssDisabled = isH5 || isApp


    const postcssPlugin = [autoprefixer(), tailwindcss()]

    if (!weappTailwindcssDisabled) {

    postcssPlugin.push(

    postcssRemToResponsivePixel({

    rootValue: 32,

    propList: ['*'],

    transformUnit: 'rpx'

    })

    )

    postcssPlugin.push(postcssWeappTailwindcssRename())

    }


    const viteConfig = defineConfig((mode: ConfigEnv) => {

    const env = loadEnv(mode.mode, process.cwd())

    return {

    plugins: [uni(), weappTailwindcssDisabled ? undefined : vwt()],

    css: {

    postcss: {

    plugins: postcssPlugin

    }

    },

    server: {

    port: 8088,

    hmr: true, // 启用热更新

    proxy: {

    '/api': {

    target: env.VITE_APP_BASE_URL, // 目标服务器地址

    changeOrigin: true, // 是否修改请求头中的 Origin 字段

    rewrite: (path) => path.replace(/^\/api/, '')

    },

    '/img': {

    target: env.VITE_APP_BASE_URL, // 目标服务器地址

    changeOrigin: true, // 是否修改请求头中的 Origin 字段

    rewrite: (path) => path.replace(/^\/img/, '')

    },

    '/mobile/api': {

    target: env.VITE_APP_BASE_IMGURL, // 目标服务器地址

    changeOrigin: true, // 是否修改请求头中的 Origin 字段

    rewrite: (path) => path.replace(/^\/mobile\/api/, '')

    }

    }

    }

    }

    })


    // https://vitejs.dev/config/

    export default viteConfig

    2026-02-03 10:11

  • 群山艳阳 (作者)

    这个是vite.config.ts

    2026-02-03 10:11

  • [已删除]

    回复 群山艳阳: 看一下我说的,不是发这个。如果 ai 问了没答案,提供复现工程

    2026-02-03 11:23

Ask小助手

Ask小助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

报错 require$$0 is not defined 是 CLI 项目在升级到 uni-app 4.8.7 后最常见的“白屏”症状,根本原因是 项目本地的 uni-app 编译器版本还停留在旧版本,与新版 HBuilderX(4.8.7)不匹配。CLI 项目的编译器是随项目走的,不会随 HBuilderX 自动更新,因此需要手动同步。

请按下面 3 步操作即可解决:

  1. 升级编译器
    在项目根目录执行(任意命令行均可)

    npx @dcloudio/uvm@latest  

    该命令会把所有 @dcloudio/uni-* 依赖一次性升级到与 HBuilderX 4.8.7 对应的最新版本。

  2. 重装依赖

    npm install  
  3. 强制重新编译

    npm run dev:%PLATFORM% -- --force  

    %PLATFORM% 换成你实际要运行的平台,例如 app-androidapp-ios

完成后重新运行到真机或模拟器,require$$0 is not defined 的错误就会消失,白屏问题随之解决。

内容为 AI 生成,仅供参考

要回复问题请先登录注册