- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
请原谅我的无知,因为我对 jquery 不太熟悉。有相当于 dojo.hitch() 的吗? ?它返回一个保证在给定范围内执行的函数。
--编辑--根据要求,这是一个示例。我经常使用 hitch 来确保回调在正确的对象中执行。例如,假设我有一个名为 doSomethingAsync
的实用方法,并且我向它传递了一个回调函数。通过故障,我可以确保该函数在特定范围内执行,即使实用程序方法执行 ajax 调用等:
expectedScopeObj = {
flag: true,
callback: function(){console.debug(this.flag);},
main: function() {
// without hitch the callback function would not find flag
core.util.doSomethingAsync(dojo.hitch(this, this.callback));
}
}
如果顺利的话,回调函数可能会在不同的作用域中执行,并且会抛出错误,并且 this.flag
未定义。但是,通过故障可以保证在 execptedScopeObj
内执行。
最佳答案
我知道这个问题已经得到解答,但不正确。 jQuery.proxy
我相信这就是您正在寻找的。
更新
很多很多年后,经过大量 JavaScript 工作,并且由于浏览器兼容性已不再是问题而不再使用 jQuery,我建议使用 Function.prototype.bind
超过 jQuery.proxy
,如@bobince suggested 。虽然这仍然是原始问题的正确答案,但我觉得有义务引导人们使用普通的解决方案,而不是依赖 jQuery。
关于jquery - jquery 有等价的 dojo.hitch() 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2035236/
为什么当我使用 dojo.hitch 函数并尝试引用其中的“this”运算符时,它给我引用了错误的对象? console.debug(dijit.byId("widgetName")); //wor
我在通过以下 Dojo 小部件的异步结构传递范围时遇到困难: function callDef(){ //This function has the scope I need var
使用var that = this是否更好; var that = this; array.forEach( tabPages, function ( tabPage, index ) { tha
请原谅我的无知,因为我对 jquery 不太熟悉。有相当于 dojo.hitch() 的吗? ?它返回一个保证在给定范围内执行的函数。 --编辑--根据要求,这是一个示例。我经常使用 hitch 来确
我在 ESRI 的 Web AppBuilder 环境(使用 ESRI Javascript 3.x API)中使用 dojo。 无论如何,我创建了一个按钮,并且在该按钮的 onClick 方法中,我
哪个是最佳实践,哪个会带来更好的性能? 使用闭包或 dojo.lang.hitch ? 谢谢 最佳答案 实际上 lang.hitch(scope, method)返回一个闭包,即它返回一个函数,该函数
我正在尝试使用 dojo jsonrest 存储从服务器请求数据。在请求时我正在捕捉回调来做一些事情。例如 this.myStore.get(paramValue).then(lang.hitch(t
我是nginx的新手。我在linode ubuntu 16.04服务器上安装了Nginx +varnish+hitch+lets encrypt用于测试。我尝试按照 varnish 博客中给出的说明进
请原谅我的无知,因为我对 Angular js 不是很熟悉。有没有等同于 dojo.hitch() 的东西?它返回一个保证在给定范围内执行的函数。 最佳答案 您实际上可以使用 native JavaS
我正在尝试使用 dojo fadeIn/Out 产生闪烁效果。 下面的代码片段是在小部件类的声明中定义的: _startHighlightEffect : function() { va
我的 dojo 应用程序遇到了一个奇怪的问题。它只是关于范围和连接对象本身。以下代码 function(data) { console.info(this); // [I]
我正在寻找一种绑定(bind)函数“this”的函数。尽管编写一个很容易,但在我编写或使用来自 dojo 的模块之前,我想确保它不是 node.js 环境中任何流行模块的一部分。 最佳答案 (func
您好,感谢您的帮助! 在我们的 Android 应用程序中,我们很少会遇到以 java.security.cert.CertificateException: Chain validation fai
我是一名优秀的程序员,十分优秀!