Skip to content

隔离变量

沙箱的原理,是将一些变量隔离,以document为例:

ts
const { document } = fakeGlobalVar
document.createElement('a')
const { document } = fakeGlobalVar
document.createElement('a')

这个时候读到的document就是沙箱中的document

以下部分可在vite/webpack插件配置中看到

原生隔离变量

nativeVars是指像document一样,原生就存在的变量

自定义隔离变量

customVars是指自定义的全局变量,比如window.a

TIP

nativeVarscustomVars详见vite/webpack的插件配置

其中nativeVars默认为 ['document', 'history', 'location', 'window', 'self', 'globalThis', 'setTimeout', 'setInterval', 'addEventListener'

customVars默认为空

如果你需要一些其他变量被隔离,修改插件配置即可

Released the MIT License.