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)。这样可以确保在应用程序运行时,变量已被正确注入到全局作用域中,并且输出结果也更易于理解和分析

相关文章
|
2月前
|
JavaScript 前端开发
成功解决:jQuery is not defined
这篇文章介绍了如何解决在使用jQuery时浏览器控制台报错`jQuery is not defined`的问题,通过在webpack配置文件中添加特定的插件配置来确保jQuery被正确加载和使用。
成功解决:jQuery is not defined
|
2月前
element-plus —— 如何对elementUI-plus进行debugger
element-plus —— 如何对elementUI-plus进行debugger
43 0
|
5月前
|
JavaScript
vue ssr 报错 ReferenceError: MouseEvent is not defined / window is not defined 等等
vue ssr 报错 ReferenceError: MouseEvent is not defined / window is not defined 等等
147 0
|
10月前
|
JSON 数据格式
【Vue3.0】—V- model‘ directives require no argument.
【Vue3.0】—V- model‘ directives require no argument.
|
前端开发
前端 window 和 window.location
前端 window 和 window.location
前端 window 和 window.location
|
JavaScript 前端开发 API
前端工作总结126-vue项目报错[Vue warn]: Property “visible“ must be accessed with “$data.visible“ because proper
前端工作总结126-vue项目报错[Vue warn]: Property “visible“ must be accessed with “$data.visible“ because proper
576 0
前端工作总结126-vue项目报错[Vue warn]: Property “visible“ must be accessed with “$data.visible“ because proper
how is SAP UI5 component.js called in the beginning
Created by Wang, Jerry, last modified on Mar 26, 2015
how is SAP UI5 component.js called in the beginning
|
JavaScript
ui5 framework extend function
extend is actually returning a new class by Metadata.createClass create prototype chain fnClass.prototype = jQuery.sap.newObject(fnBaseClass.prototype); fnClass.prototype.constructor = fnClass; Make the class visible as JS Object: jQuery.sap.setObject(sClassName, fnClass); fnClass.getMetadata = fnCl
100 0
ui5 framework extend function
when is this.oModel in sap-ui-core.js initialized for navigation working
Created by Wang, Jerry, last modified on May 21, 2015
89 0
when is this.oModel in sap-ui-core.js initialized for navigation working
OPA 3 - thirdParty Qunit.js and IFrame load logic
Created by Wang, Jerry, last modified on Nov 08, 2015
124 0
OPA 3 - thirdParty Qunit.js and IFrame load logic