我在使用svelte-kit和@aws-amplify/auth时遇到错误
import Auth from '@aws-amplify/auth';会导致以下错误:
500
global is not defined
node_modules/amazon-cognito-identity-js/node_modules/buffer/index.js@http://localhost:3000/node_modules/.vite/@aws-amplify_auth.js?v=fb9b3a59:4766:5
__require2@http://localhost:3000/node_modules/.vite/chunk-A2XPJTG4.js?v=fb9b3a59:19:44
@http://localhost:3000/node_modules/.vite/@aws-amplify_auth.js?v=fb9b3a59:30155:32我尝试添加了以下内容:
resolve({
browser: true,
preferBuiltins: false,
alias: {
"./runtimeConfig": "./runtimeConfig.browser"
}
}),但它似乎什么也做不了。我也不知道这个runtimeConfig是什么
发布于 2021-10-21 08:14:30
这很困难,global存在于NodeJS和现代浏览器中,但不存在于web workers中,但因为Svelte大量使用workers,所以出现了问题。https://github.com/sveltejs/svelte/pull/4628 --此PR引入了globalThis,但您需要找到一种方法来更改此库。
或者,如果您只想在SSR中使用它(服务器端),那么您应该为<script context="module">导入并放置此代码。
这里的主要问题是这个库,因为它依赖于NodeJS,并且不是专门为浏览器设计的。
https://stackoverflow.com/questions/69635869
复制相似问题