vue.js 如何在Quasar中配置Sentry Vite-Plugin用于源Map上传?

1rhkuytd  于 2023-11-21  发布在  Vue.js
关注(0)|答案(1)|浏览(233)

我试图按照Sentry的文档来配置我的Vue.js SPA应用程序以报告错误。考虑到构建期间的缩小,Sentry需要源Map,该源Map是由Vite在构建时创建的。Sentry的向导还创建了此配置文件:

import { defineConfig } from 'vite';
import { sentryVitePlugin } from '@sentry/vite-plugin';

export default defineConfig({
  build: {
    sourcemap: true, // Source map generation must be turned on
  },
  plugins: [
    // Put the Sentry vite plugin after all other plugins
    sentryVitePlugin({
      authToken: process.env.SENTRY_AUTH_TOKEN,
      org: 'my-organisation',
      project: 'my-project',
    }),
  ],
});

字符串
但是考虑到我使用的是Quasar而不是普通的Vue.js,Vite构建系统在某种程度上是封装的,需要在quasar.config.js中进行配置(参见https://quasar.dev/quasar-cli-vite/handling-vite/)。
然而,当我像这样添加文档指定的插件时,

// Inside quasar.config.js
build: {
  // ...
  sourcemap: true,
  vitePlugins: [['@sentry/vite-plugin', { /* options omitted for simplicity */ }]],
},
// ...


我得到以下错误

alex@MusicBook-Pro foliant % quasar inspect 

 Dev mode............... spa
 Pkg quasar............. v2.12.5
 Pkg @quasar/app-vite... v1.4.6
 Pkg vite............... v2.9.16
 Debugging.............. enabled

 App • Running "@quasar/testing" Quasar App Extension...
 App • Running "@quasar/testing-unit-vitest" Quasar App Extension...
API-URL during build: http://127.0.0.1:8000/
/Users/alex/Repositories/foliant/node_modules/@quasar/app-vite/lib/config-tools.js:76
      (plugin.default || plugin)(
                                ^

TypeError: (plugin.default || plugin) is not a function
    at /Users/alex/Repositories/foliant/node_modules/@quasar/app-vite/lib/config-tools.js:76:33
    at Array.forEach (<anonymous>)
    at parseVitePlugins (/Users/alex/Repositories/foliant/node_modules/@quasar/app-vite/lib/config-tools.js:25:11)
    at createViteConfig (/Users/alex/Repositories/foliant/node_modules/@quasar/app-vite/lib/config-tools.js:148:10)
    at Object.vite (/Users/alex/Repositories/foliant/node_modules/@quasar/app-vite/lib/modes/spa/spa-config.js:6:17)
    at inspect (/Users/alex/Repositories/foliant/node_modules/@quasar/app-vite/lib/cmd/inspect.js:103:43)

Node.js v20.8.0


这看起来很奇怪,因为对于示例中的其他插件,如rollup-plugin-copy,配置是这样工作的。我怀疑plugin-name中的@-符号在这里引起了问题。但是我也没有任何其他名称。也许它需要一些转义?
有谁知道如何正确配置与类星体的Sentry-Vite-Plugin?

bpsygsoo

bpsygsoo1#

我建议你做以下事情:

build: {
  vitePlugins: [
    require('@sentry/vite-plugin').sentryVitePlugin({ /* options */ })
  ]
}

字符串

相关问题