JavaScript ES6对Angular2的承诺——未定义的变量
JavaScript ES6 promise with Angular2 - undefined variable
我有如下所示的任意对象数组:
let PAGES = [
new BasePage(
'home',
'test')
];
let pagesPromise = Promise.resolve(PAGES);
我现在试图通过调用下面的方法返回一个BasePage
对象。
getPageByPage(name: string): BasePage {
let page: BasePage;
pagesPromise.
then(pages => page = pages.find(p => p.name === name));
return page;
}
变量page
是未定义的-我不知道如何解决这个问题。此外,我也不确定我是否滥用了承诺原则。
return page
在pagesPromise的解析之前被执行。变量page
将只包含调用它的解析函数中.find的结果…
pagesPromise.
then(pages => page = pages.find(p => p.name === name)).
then(() => console.log(page));
相关文章:
- Socket.IO未定义变量
- 更改 Javascript 对象中所有未定义变量的值
- coffeescript,类未定义变量
- 使用下划线未定义变量时发生抛出/捕获错误
- 网络浏览器正在成为“;严格的“;用于Javascript中未定义变量的操作
- 使用window.location时未定义变量
- 传递给数据的未定义变量
- bizzare未定义变量
- JavaScript 中全局范围内存在未定义变量的原因是什么?
- JavaScript onClick 参数表示未定义变量
- 在指令中使用 $scope.$watch 处理未定义变量的替代方法
- 对于循环错误:未捕获的引用错误,未定义变量.怎么了
- JavaScript / YouTube API - 未定义变量 YT
- 未捕获的引用错误:在测试真实性时未定义变量
- 通过使用JavaScript“未定义”(变量),我们可以释放系统内存
- 与未定义变量相关的错误
- Angularjs 控制器中的未定义变量
- 角度解析:未定义变量
- BackboneJS Uncaught ReferenceError:未定义变量
- 使用Underscore JS部分和for循环的未定义变量对象