首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何卸载实用程序模块(与jQuery.sap.require相反)

如何卸载实用程序模块(与jQuery.sap.require相反)
EN

Stack Overflow用户
提问于 2015-03-26 13:00:56
回答 1查看 890关注 0票数 0

我在Fiori中卸载自定义实用程序模块时遇到了问题。我想这么做是为了清理资源。

模块定义:

代码语言:javascript
复制
jQuery.sap.declare("sap.ui.demo.tdg.util.Formatter");    
  sap.ui.demo.tdg.util.Formatter = {
    methodCall: function() {
...

模块加载在组件init中:

代码语言:javascript
复制
myComponentPath.Component.prototype.init = function(){    
  jQuery.sap.require("sap.ui.demo.tdg.util.Formatter");
  sap.ui.demo.tdg.util.Formatter.methodCall(); <- error happens here when opening 2nd time

我试图在组件销毁时将模块设置为null,但是当第二次在Fiori中打开应用程序时,我在sap.ui.demo.tdg.util.Formatter上没有定义:

代码语言:javascript
复制
myComponentPath.Component.prototype.destroy = function(){
  sap.ui.demo.tdg.util.Formatter = null;

或者我只是偏执,不应该关心资源被妥善清理。:)

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-26 14:32:51

你可以试一试:

代码语言:javascript
复制
jQuery.sap.unloadResource("some/util/Formatter.js", false, true, true);

编辑: jQuery.sap.require加载资源并将其保存到名为mModules的内部映射中。使用unloadResource,您可以从此地图中删除一个entrie。路径后面的参数描述了如何处理全局vars之类的依赖关系。

但是您可以自己阅读文档这里

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29279098

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档