window.__POWERED_BY_QIANKUN__

简介: window.__POWERED_BY_QIANKUN__

这样一个问题,采用微前端基座模式下,基座去管理所有子应用。子应用必须在基座访问才可显示菜单,单独访问的情况下直接空白

如果是通过缓存状态判断肯定是不安全的

如此我们这里聊一下window.POWERED_BY_QIANKUN

qiankun其中一个注入的全局变量是 window.POWERED_BY_QIANKUN。这个变量是一个布尔类型的值,用于指示当前应用程序是否在 qiankun 容器中运行

const isPoweredByQiankun = window.__POWERED_BY_QIANKUN__;

if (isPoweredByQiankun) {
   
  // 在 Qiankun 容器中运行
  // 执行 Qiankun 提供的一些额外功能
} else {
   
  // 在普通的单独运行模式中
  // 执行应用程序自身的功能
}

子应用中通过运行 window.POWERED_BY_QIANKUN 来判断是否存在去做相关操作
为true的情况下则表示在基座容器中运行,为fasle的情况下则表示不在基座中运行

介绍
window.POWERED_BY_QIANKUN 变量是在应用程序运行时被 Qiankun 微前端框架动态注入到全局作用域中的。
在 Qiankun 框架中,主应用负责加载和启动所有微前端子应用程序。当子应用程序被加载时,Qiankun 框架会自动将 window.POWERED_BY_QIANKUN 变量注入到子应用程序的全局作用域中。这样,在子应用程序中就可以检测到当前应用程序是否在 Qiankun 容器内运行。
在主应用程序中,window.POWERED_BY_QIANKUN 变量是在主应用程序启动时由 Qiankun 框架动态注入到全局作用域中的。这个变量可以用来判断主应用程序是否运行在 Qiankun 容器中。
总之,window.POWERED_BY_QIANKUN 变量是在 Qiankun 微前端框架加载和运行过程中动态注入到全局作用域中的

如果在浏览器控制台中直接输入 window.POWERED_BY_QIANKUN,那么输出的结果应该是 undefined。因为在这种情况下,控制台只是简单地访问全局变量,而并没有执行任何代码来触发 Qiankun 微前端框架对变量的注入操作

如果要测试应用程序是否在 Qiankun 容器中运行,您可以在应用程序的代码中使用 console.log(window.POWERED_BY_QIANKUN) 来输出变量值,或者在控制台中输入 console.log(window.POWERED_BY_QIANKUN)。这样可以确保在应用程序运行时,变量已被正确注入到全局作用域中,并且输出结果也更易于理解和分析

相关文章
|
8月前
vue-3d-model.umd.js报错You may need an appropriate loader to handle this file type怎么办?
vue-3d-model.umd.js报错You may need an appropriate loader to handle this file type怎么办?
|
5月前
element-plus —— 如何对elementUI-plus进行debugger
element-plus —— 如何对elementUI-plus进行debugger
62 0
|
8月前
|
JavaScript
vue3的警告问题 [Vue warn]: inject() can only be used inside setup() or functional components. 怎么解决?
vue3的警告问题 [Vue warn]: inject() can only be used inside setup() or functional components. 怎么解决?
435 5
|
8月前
|
JavaScript
vue ssr 报错 ReferenceError: MouseEvent is not defined / window is not defined 等等
vue ssr 报错 ReferenceError: MouseEvent is not defined / window is not defined 等等
210 0
|
8月前
|
编解码 JavaScript 编译器
【Vue warn】If this is a native custom element, make sure to exclude it from component resolution ……
【Vue warn】If this is a native custom element, make sure to exclude it from component resolution ……
|
前端开发 定位技术 API
react BMap is not defined 或者 BMapGL is not defined
react BMap is not defined 或者 BMapGL is not defined
474 0
|
JavaScript 前端开发
|
JavaScript 前端开发
|
JavaScript
【Vue】【杂碎】v-on:change = “methods()“和v-on:change = “methods“的区别
【Vue】【杂碎】v-on:change = “methods()“和v-on:change = “methods“的区别
137 0
|
前端开发
前端 window 和 window.location
前端 window 和 window.location
前端 window 和 window.location

热门文章

最新文章