沙箱
默认隔离的变量有document,window,self,history,location 其他需要隔离的变量,必须标明在子应用的插件中,
默认规则
详见源码
自定义规则
可以对规则进行更改 本质就是自己写一个createProxy,然后在创建对象时往里面传
ts
const customProxy = {
document: {
get(target, p) {
if (p === 'test')
return 'test'
// ..
}
}
}
const app = new Merak(name, url, { proxy: customProxy })const customProxy = {
document: {
get(target, p) {
if (p === 'test')
return 'test'
// ..
}
}
}
const app = new Merak(name, url, { proxy: customProxy })子应用中
ts
if (window.$Merak)
document.test// 'test'if (window.$Merak)
document.test// 'test'
天璇