开发者社区 > 云原生 > 云原生可观测 > 正文

我在main.ts中 执行的 ArmsRum.init 为啥页面直接白屏了呀?

在vue3项目中以npm的方式去引入,我在main.ts中 执行的 ArmsRum.init 为啥页面直接白屏了呀?import { createApp } from 'vue'
import ArmsRum from '@arms/rum-browser'

ArmsRum.init({
pid: 'xxx',
endpoint: 'xxx',
spaMode: 'hash',
env: 'local'
})
app.use(router)

app.mount('#app')
这是简化后的
Uncaught ReferenceError: global is not defined\n\t/node_modules/.vite/deps/@arms_rum-browser.js?v=d0394413:2377:33\nReferenceError: global is not defined
at a.hackFetch (http://10.10.61.217:4001/node_modules/.vite/deps/@arms_rum-browser.js?v=d0394413:2377:33)
at a.setup (http://10.10.61.217:4001/node_modules/.vite/deps/@arms_rum-browser.js?v=d0394413:2331:107)
at http://10.10.61.217:4001/node_modules/.vite/deps/@arms_rum-browser.js?v=d0394413:583:21
at Array.forEach ()
at Client2.init (http://10.10.61.217:4001/node_modules/.vite/deps/@arms_rum-browser.js?v=d0394413:582:20)
at b.init (http://10.10.61.217:4001/node_modules/.vite/deps/@arms_rum-browser.js?v=d0394413:2712:390)
at http://10.10.61.217:4001/src/main.ts?t=1710729224512:61:9

展开
收起
三分钟热度的鱼 2024-03-27 22:12:12 102 0
3 条回答
写回答
取消 提交回答
  • 在 Vue 3 项目中,如果在 main.ts 中执行 ArmsRum.init() 导致页面白屏,可能是因为初始化过程中出现了错误或者配置不正确。为了解决这个问题,你可以尝试以下方法:

    1. 确保已经正确安装并引入了 @arms/rum-browser 依赖。

    2. 检查 ArmsRum.init() 的参数是否正确配置。例如,确保传入了正确的应用 ID、服务地址等。

    3. 在调用 ArmsRum.init() 之前,先进行一些简单的操作,如打印日志、设置全局变量等,以确保代码能够正常执行。

    4. 如果仍然无法解决问题,可以尝试在浏览器的控制台中查看是否有报错信息,以便进一步排查问题。

    5. 如果以上方法都无法解决问题,建议查阅 @arms/rum-browser 的官方文档或寻求社区支持。

    2024-03-31 08:11:15
    赞同 展开评论 打赏
  • 在 Vue 3 项目中,如果在 main.ts 中执行 ArmsRum.init() 导致页面白屏,可能是因为初始化过程中出现了错误。为了找出具体原因,可以在 ArmsRum.ini确保已经正确安装并引入了@arms/rum-browser包。然后,在main.ts` 文件中,尝试以下修改:

    
    import { createApp } from 'vue'
    import ArmsRum from '@arms/rum-browser'
    
    console.log('开始初始化 ArmsRum...')
    try {
      ArmsRum.init({
        // 你的配置参数
      })
      console.log('ArmsRum 初始化成功')
    } catch (error) {
      console.error('ArmsRum 初始化失败:', error)
    }
    
    const app = createApp(/* ... */)
    app.mount('#app')
    

    这样,如果 ArmsRum.init() 调用过程中出现异常,你可以在浏览器的控制台中看到相应的错误信息。根据这些信息,你可以进一步排查问题所在。

    2024-03-28 17:46:34
    赞同 展开评论 打赏
  • 这个错是vite 报出来的,
    原因是:在于vite并没有像webpack那样在window中定义全局字段。一些库依赖于它,因为webpack比vite要古老得多。
    解决办法:
    // init.js
    window.global ||= window;

    // in index.js or main.js file
    import "./init"
    // import your app and libraries after...
    import App from './App'
    import ...

    或者在vite.config.ts 加上

    export default defineConfig({
    define: {
    global: {},
    },
    })
    此回答整理自钉群“RUM 用户体验监控支持群”

    2024-03-27 22:35:47
    赞同 展开评论 打赏

云原生可观测基于Prometheus、Grafana 、OpenTelemetry 等核心产品, 形成指标、链路存储分析、异构数据源集成的数据层, 通过标准PromQL和SQL提供大盘展示、告警与探索能力。

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载