问题标签 [thunk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - 如何在 koa 中使用 thunk 获取 readStream ?
我想在 koa 控制器中传递一个请求,它的工作:
但是使用 thunk ,它似乎不起作用。
这是thunk
:
haskell - Test if a value has been evaluated to weak head normal form
In Haskell, is it possible to test if a value has been evaluated to weak head normal form? If a function already exists, I would expect it to have a signature like
There are a few places that similar functionality lives.
A previous answer introduced me to the :sprint
ghci command, which will print only the portion of a value that has already been forced to weak head normal form. :sprint
can observe whether or not a value has been evaluated:
It's possible in IO
to examine properties that would otherwise be off-limits. For example, it's possible to compare in IO
to see if two values came from the same declaration. This is provided by the StableName
s in System.Mem.StableName
and used famously to solve the observable sharing problem in data-reify. The related StablePtr
does not provide a mechanism to check if the referenced value is in weak head normal form.
c++ - C++ std::function 返回它自己类型的向量(再次递归类型)
理想情况下,我想声明以下类型:
这是一个 thunk,它返回一个后续 thunk 的向量。我能够使用来自Recursive typedef 函数定义的信息来做到这一点: std::function 返回它自己的类型:
但是,例如,要将这些东西推入堆栈,我必须执行以下操作:
理想情况下,我想避免RecursiveHelper
在使用这些东西的代码中提及任何内容,如果他们想要一堆 action_t,他们应该能够将符合要求的 lambda 直接推送到它上面。
有没有办法做到这一点?
scala - Scala 提升到 thunk
我有一个函数将另一个函数的结果包装在 Promise 中。我想将其推广为电梯功能,以便我可以在其他地方重新使用它。以下是原始定义:
所以我最终做了以下事情:
我怎样才能重复使用这个?我的意思是,我传入的第二个参数应该是一个 thunk,这样我就可以传入任何函数体,而不管函数体需要什么参数!
当我将提升的功能称为:
这是类型Int => Promise[Int]
,其中someOtherFunction
返回一个Int
. 我只想要Promise[Int]
我打电话的时候myLiftFunc
!
multithreading - GHC 的 thunk 有多原子?
GHC 如何处理由多个线程(显式线程或评估火花的内部线程)访问的 thunk?是否会发生多个线程评估相同的 thunk、重复工作?或者,如果 thunk 是同步的,如何使性能不受影响?
ios - Swift - 应用商店拒绝 - 部分应用转发器用于重新抽象 thunk 助手
我的应用程序被 Apple 拒绝。它作为 ADHOC 构建的工作非常好,但在 Apple 进行测试时崩溃。任何帮助将不胜感激。
我得到的错误是(崩溃日志):
我的代码是 -
下面代码片段的最后一行是第 109 行 -
javascript - 使用带有承诺而不是 thunk 的 co 库有什么好处?
所以我一直在阅读co库的用法,我在大多数博客文章中看到的一般设计模式是包装在 thunk 中具有回调的函数。然后使用 es6 生成器将这些 thunk 生成给co
对象。像这样:
我可以理解,因为它带来了 Promise 的所有好处,比如更好的可读性和更好的错误处理。
但是,co
如果您已经有了可用的承诺,那么使用的意义何在?
为什么不喜欢
对我来说,与 Promise 版本相比,co 使代码看起来更加混乱。
mysql - 从节点、mysql、koa 中的 thunk 获取数据
我想使用 Koa 和mysql
node 包从我的 MySQL 数据库中获取一些数据。我在看co-mysql,但自述文件建议使用thunkify
直接使用。所以我做了以下事情:
这似乎可行,就像我现在可以做的那样:
但是,我找不到将 thunk 中的行数据返回/生成到我的 races 变量中的方法。我记录它,它显示正确的数据,但是当我尝试将它传回时,它总是返回未定义的。我从回调内部尝试了几种方法,但我似乎无法弄清楚:
return rows
yield rows
(使回调成为生成器函数)
return yield rows
...
我经常得到:TypeError: You may only yield a function, promise, generator, array, or object, but the following object was passed: "undefined"
javascript - React Redux 应用程序 - 复杂的初始化动作组合在其他承诺完成之前执行最终承诺
我正在开发一个必须管理大量数据的应用程序。在初始化过程中,当用户看到加载条时,必须执行几个 api 调用。
这是我的初始化操作:
到目前为止,它运行良好,但会有 20k 到 50k 篇文章。后端必须执行一些连接才能将数据放在一起,所以如果我尝试将它们整合在一起,我确信我会得到服务器超时。
这个想法是先获取总数,然后循环获取 1k 篇文章。但它不会按我需要的方式工作。我是initFinish
在文章数完之后才被派去的,但不是在它们被取走之后。
这是loadArticles
动作:
}
我还没有循环,但这不是重点。逻辑保持不变。我返回dispatch(countArticles(key))
之前fetchArticles
完成。
有没有人暗示?那将是真棒。
编辑
coutArticles
和fetchArticles
这里的中间件是一样的es
2. 编辑
如果我改变
至
我Uncaught TypeError: Cannot read property 'then' of undefined
上车dispatch(loadArticles(key))
。
3. 编辑
几天后我还在战斗^^
这是简化的 init 函数,它应该(仅)获取计数结果,然后获取文章:
但现在我已经在这里失败了:
输出:
listview - Redux ListView 在动作分派后不重新呈现内容
我使用的 redux 几乎与异步 reddit redux 示例完全一样,使用 thunk 中间件仅在需要时更新状态(shouldFetch)。有没有人注意到 React-Native ListView 在网络调用更新商店后没有捕捉到变化?如果我离开并返回它看起来很好。它只是在网络调用(来自上一个路由)之后才出现。
我的 ListView.js