标签:dojo amd js-amd javascript esri-javascript-api
如何调用在匿名函数中定义但都在同一JS文件中的函数.这是我的代码段.如何从testMethodOutside()调用_testMethodInside()?
// Line 1 to 13 is an existing code from ESRI API
define([
"dojo/_base/declare",
"dojo/_base/html"
], function (
declare,
html
) {
return declare([_WidgetBase, _TemplatedMixin], {
_testMethodInside: function () {
return 'success';
}
});
});
//Call above using this function
function testMethodOutside(){
//How to call _testMethodInside() function from here
}
解决方法:
请遵循Dojo文档.定义块定义模块.您没有指定模块ID(可以通过显式传递,也可以从文件名中推断出来),因此我将继续进行操作,就好像该模块被命名为my / Example.
require(['my/Example'], function(Example) {
var example = new Example();
example._testMethodInside(); // here is where you call _testMethodInside
}
关键是因为模块是异步加载的,所以唯一可以安全调用的地方是传递给(AMD) require
的回调函数.
标签:dojo,amd,js-amd,javascript,esri-javascript-api 来源: https://codeday.me/bug/20191024/1924048.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。