我对Javascript和可能有角度的承诺进行了审讯。
当我打印整个对象时:
console.log(constants);
输出:
Object {PARENT_NEEDS: Promise}
然而,当我尝试按如下方式打印对象的属性时:
console.log(constants.PARENTS_NEEDS);
我看到undefined
作为输出......
任何人都可以解释为什么第二个输出未定义?
以下是我在UI路由器配置中设置对象的方法:
resolve: {
constants: ['constantsService', function (constantsService) {
return {PARENT_NEEDS: constantsService.PARENTS_NEEDS};
}]
}
编辑1 :
console.log(JSON.stringify(constants));
输出:
{"PARENT_NEEDS":{"$$state":{"status":1,"value":{"PARENTS_TO_CHILDCARE_WORKER":0,"PARENTS_TO_PARENTS":1}}}}
答案 0 :(得分:4)
这是一个错字
Object {PARENT_NEEDS: Promise}//notice single form of PARENT
鉴于console.log
还有其他名称
console.log(constants.PARENTS_NEEDS);//plural