草庐IT

dispatch_apply

全部标签

javascript - Flux 最佳实践 : Stores dispatching actions, Web API Utils 中的 AJAX 调用?

据我了解,此图已成为大多数(如果不是全部)Flux程序员的终极指南。考虑到这个流程,我有几个问题:将我所有的$.ajax调用都放在我的WebAPIUtils中是否正确/强烈建议?回调调用Action创建者,传递过程中的数据如果我想让我的Store进行AJAX调用,我必须先调用ActionCreator,对吗?直接从Store调用WebAPIUtils中的函数是否根本不正确?从Store到ActionCreators是否有一个虚拟的单向箭头?我有很多操作不经过ViewDispatcher和Store之间的回调是什么?这里的WebAPI是什么?这是您应用RESTfulAPI的地方吗?有这样

JavaScript partially applied function - 如何只绑定(bind)第二个参数?

抱歉,如果我遗漏了一些明显的东西,但我不知道如何在javascript中绑定(bind)函数的特定(第n个)参数。我学到的大部分函数式编程都来自Scala,所以我不确定这在JS中是否可行。例如,我知道我可以执行以下操作来绑定(bind)第一个参数varadd=function(a,b){returna+b;};add(1,3);//returns4varaddThree=add.bind(null,3);//this=null.a=3addThree(4);//returns7但是我怎样才能绑定(bind)第二个参数并保持第一个不变。换句话说,我怎样才能只绑定(bind)到“b”?据我

javascript - 为什么 Array.push.apply 不起作用?

如所述here,在javascript中将数组b附加到数组a的快速方法是a.push.apply(a,b)。您会注意到对象a使用了两次。实际上,我们只需要push函数,而b.push.apply(a,b)完成完全相同的事情——apply的第一个参数提供this用于应用的函数。我认为直接使用Array对象的方法可能更有意义:Array.push.apply(a,b)。但这不起作用!我很好奇为什么不这样做,以及是否有更好的方法来实现我的目标。(应用push函数而不需要调用特定数组两次。) 最佳答案 是Array.prototype.pu

javascript - 为什么 console.log.apply() 抛出非法调用错误?

这个问题在这里已经有了答案:TypeError:IllegalInvocationonconsole.log.apply(1个回答)关闭9年前。当我在Chrome18beta中执行以下代码时出现错误:console.log.apply(this,['message']);TypeError:Illegalinvocation.在Firefox10中,它按预期工作。在IE9中,我收到错误:对象不支持“应用”属性或方法。我猜这与浏览器如何实现console.log有关。为什么它在Firefox中有效,但在Chrome和IE中无效?我希望有人能阐明造成这种情况的原因及其后果。这里是anexe

javascript - Angular2 IE11 无法获取未定义或空引用的属性 'apply'

将我的angular2包升级到以下版本后出现以下错误:@angular/common":"^2.3.1@angular/compiler":"^2.3.1@angular/core":"^2.3.1@angular/forms":"^2.3.1@angular/http":"^2.3.1@angular/platform-b​​rowser":"^2.3.1"@angular/platform-b​​rowser-dynamic":"^2.3.1@angular/platform-server":"^2.3.1@angular/router":"^3.3.1错误:无法获取未定义或空引用

javascript - 在 Javascript 中使用 call 和 apply 的上下文?

任何人都可以解释一下在Javascript中使用call和apply方法的上下文吗?为什么要使用call和apply而不是直接调用一个函数? 最佳答案 您使用call或apply当您想将不同的this值传递给函数时。从本质上讲,这意味着您想要执行一个函数,就好像它是一个特定对象的方法一样。两者之间的唯一区别在于,call需要以逗号分隔的参数,而apply需要数组中的参数。来自Mozilla'sapplypage的示例,其中构造函数被链接:functionProduct(name,price){this.name=name;this.

javascript - Math.max.apply() 是如何工作的?

Math.max.apply()是如何工作的?JSBinvarlist=["12","23","100","34","56","9","233"];console.log(Math.max.apply(Math,list));https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/max上面的代码在列表中找到最大数。谁能告诉我下面的代码是如何工作的?如果我通过null或Math.似乎它有效console.log(Math.max.apply(Math,list));是否所

javascript - 如何使用 call 或 apply 调用 javascript 构造函数?

这个问题在这里已经有了答案:Useof.apply()with'new'operator.Isthispossible?(36个答案)关闭7年前。我如何概括下面的函数以接受N个参数?(是打电话还是申请?)是否有编程方式将参数应用于“new”?我不希望将构造函数视为普通函数。/***Thishigherlevelfunctiontakesaconstructorandarguments*andreturnsafunction,whichwhencalledwillreturnthe*lazilyconstructedvalue.**Allthearguments,exceptthefir

javascript - 当 Redux 中的 mapToDispatchToProps() 参数时,'dispatch' 不是一个函数

我是一名javascript/redux/react初学者,使用redux、react-redux和react构建一个小型应用程序。出于某种原因,当我将mapDispatchToProps函数与connect(react-redux绑定(bind))结合使用时,我收到一个TypeError,表明当我尝试执行生成的prop时,dispatch不是一个函数。但是,当我将dispatch作为prop调用时(请参阅提供的代码中的setAddr函数)它可以工作。我很好奇为什么会这样,在redux文档的示例TODO应用程序中,mapDispatchToProps方法的设置方式相同。当我在函数内部使

javascript - $.when.apply($, someArray) 是做什么的?

我是readingaboutDeferredsandPromises并不断遇到$.when.apply($,someArray)。我有点不清楚这到底是做什么的,正在寻找oneline完全有效的解释(不是整个代码片段)。这是一些上下文:vardata=[1,2,3,4];//theidscomingbackfromserviceAvarprocessItemsDeferred=[];for(vari=0;i 最佳答案 .apply用于调用带有参数数组的函数。它获取数组中的每个元素,并将每个元素用作函数的参数。.apply还可以更改函数