问题标签 [ecmascript-next]
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.
javascript - 返回未定义的异步函数
我正在从 GraphQL 服务器获取数据,我正在尝试Async
通过 babel 实现 ES7 功能。我目前正在undefined
控制台中接收,我不确定我做错了什么。
javascript - Why was await* removed from the async/await proposal?
The only place it seems to be documented is this issue thread and the actual specification. However, the reasoning for the removal isn't posted anywhere I could find.
The new recommended way seems to be await Promise.all()
, but I'm curious as to why await*
was removed.
javascript - 如何让装饰器使用 babel 和 webpack?
我有以下设置:
网络包:
但我收到以下错误:
有谁知道我在这里做错了什么?
更新
我已经升级到 Babel 6,现在有以下设置:
和:
但是Parsing error: Unexpected token ILLEGAL
请参考装饰器。
javascript - 从带有 ES7 异步和异步生成器函数的 for...on 循环返回时会发生什么?
我正在努力思考以下示例中发生的情况:
return
循环内的语句是否for...of
取消订阅代表输出的观察者Project#bar
?
javascript - async/await 隐式返回承诺?
我读到由async
关键字标记的异步函数隐式返回一个承诺:
但这是不连贯的......假设doSomethingAsync()
返回一个承诺,并且 await 关键字将返回来自承诺的值,而不是承诺本身,那么我的 getVal 函数应该返回该值,而不是隐式承诺。
那么究竟是什么情况呢?由 async 关键字标记的函数是隐式返回承诺还是我们控制它们返回的内容?
也许如果我们没有明确地返回一些东西,那么他们就会隐含地返回一个承诺......?
更清楚地说,上面和上面有区别
在我的概要中,这种行为确实与传统的返回语句不一致。看来,当您从函数显式返回非承诺值时async
,它将强制将其包装在承诺中。我对它没有什么大问题,但它确实违反了普通的 JS。
javascript - 异步函数 - 我需要 .done() 吗?它的目的是什么?
我的 React 代码中有这个:
我从其他地方复制了结构,但我想知道是否.done()
有必要,如果有,为什么?
javascript - 类方法可以在 ES 6 或 7 中声明为引用吗?
我试图从(我的上帝,看看我们走了多远!)掌握了这段代码。react-redux-universal-hot-example
无论如何..
他们将一个类的 2 个静态方法声明为对 2 个函数参数的引用。
关键是..这行得通...但是 ES6 或 ES7 都支持它吗?你可以实现一个类成员作为对你作为参数接收的东西的引用吗?
javascript - 从异步函数返回的承诺中获取价值
我已经习惯了建议的 async/await 语法,并且有一些不直观的行为。在“异步”函数中,我可以 console.log 正确的字符串。但是,当我尝试返回该字符串时,它会返回一个承诺。
检查此条目:async/await 隐式返回 promise?,很明显,任何“异步函数()”都会返回一个承诺,而不是一个值。没关系。但是你如何获得价值呢?如果唯一的答案是“回调”,那很好 - 但我希望可能会有更优雅的东西。
javascript - 几乎在任何地方都可以使用 async/await 吗?
我目前正在编写供个人使用的小型 NodeJS CLI 工具,并且我决定尝试使用 Babel 的 ES7 async/await 功能。
这是一个网络工具,所以我显然有异步网络请求。我为包写了一个简单的包装器request
:
现在我可以做类似的事情
现在我有一个问题:我在很多地方都提出了请求,我必须将所有这些功能标记为async
,这是一个好习惯吗?我的意思是我的代码中几乎每个函数都应该是async
因为我需要await
其他async
函数的结果。这就是为什么我认为我误解了 async/await 概念。
javascript - ES6 类属性定义
所以我已经阅读了stackoverflow。在 ES6 中这是无效的:
但它在 ES7 中有效。
但是,这是否有效:
在这里我没有定义internalViewModel
,直到我真正设置它。我希望如果你在打电话myClass.setViewModel(something)
之前没有打电话myClass.viewModel
,你会undefined
从myClass.viewModel
.
这个对吗?
如果你有这个 ES7 类并且你尝试myProperty
像这样访问,myClass.myProperty
你会得到预期的结果"Hey"
吗?