gpt4 book ai didi

svelte - ReferenceError : document is not defined in Svelte 3

转载 作者:行者123 更新时间:2023-12-04 01:47:02 27 4
gpt4 key购买 nike

我正在尝试在<script>中手动document.createElement,然后在每次调用appendChild替换它时,先在audio中添加eventListener一切都可以在浏览器中正常运行,除了页面加载时会出现的非常快速的错误,但这持续时间不到100ms 。终端中也有错误

ReferenceError: document is not defined
at Object (webpack:///./src/components/Record/Component.svelte?:26:17)

似乎在文档还没有准备好但后来还可以的时候调用了上面的方法,该如何解决?或者在Svelte world(Sapper)中销毁和重新创建组件的首选方法是什么?

最佳答案

document尚未在服务器上定义,因此您需要在组件中对此加以防范,以使特定的代码段仅在浏览器中运行。

您可以使用仅在呈现组件后才在浏览器中运行的 onMount 函数。

<script>
import { onMount } from 'svelte';

onMount(() => {
document.createElement(...);

// ...
});
</script>

关于svelte - ReferenceError : document is not defined in Svelte 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56180458/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com