Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/459.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 尝试在Angular2中以HTML呈现JSON_Javascript_Json_Angular - Fatal编程技术网

Javascript 尝试在Angular2中以HTML呈现JSON

Javascript 尝试在Angular2中以HTML呈现JSON,javascript,json,angular,Javascript,Json,Angular,我试图将从后端返回的JSON呈现到HTML{{object.x},我在共享服务中使用行为主题,在共享服务中调用我试图呈现的列表的API端点 public storesChanged = new BehaviorSubject([]); public getStores(): void { this.retrieveResults().subscribe((results) => { this.storesChanged.next(results.Results)

我试图将从后端返回的JSON呈现到HTML
{{object.x}
,我在共享服务中使用
行为主题
,在共享服务中调用我试图呈现的列表的API端点

public storesChanged = new BehaviorSubject([]);

public getStores(): void {
  this.retrieveResults().subscribe((results) => {
    this.storesChanged.next(results.Results)
      console.log('Name >> ', results.Results[0].Name) // this shows me the Name
  });
}
public retrieveResults(): Observable<any> {
  return this.http.get('/api/Stores/Summary')
  .map(res => res.json())
} 
这是我试图在HTML
{{currentStore.Name}
中呈现的对象,但是它返回了一个错误
无法读取未定义的属性“Name”

{
   'Id': 1,
   'Name': 'Eastleigh'
}

我很困惑,当属性在对象中时,为什么它返回未定义的
'Name'。有人能指出原因吗。

由于您的
currentStore
对象是异步接收的,您可以像这样使用“elvis”操作符

{{ currentStore?.Name }}
“elvis”或安全导航操作员将检查您的对象是否为空/未定义。定义后,angular将尝试访问您选择的属性(名称)


来源:

{{currentSore.Name}}
->
{{currentStore.Name}}
您有一个输入错误是的,对不起,这是我自己的输入错误,在键入此问题时您尝试过elvis操作符吗
{{currentStore?.Name}
@echonax这是怎么回事,但不确定elvis操作符是什么?介意给我一个小小的解释吗?猫王运营商警惕“找不到财产”。如果“名称”在currentStore上不存在,它将停止尝试评估它(以及随后的任何其他道具),从而使您免于可怕的错误。通过这种方式,当“name”最终可用时,您将得到您期望的结果。谢谢听起来像是一个方便的操作员来进行检查。@MrNew当您在angular2中处理异步操作时,它确实让您的生活更轻松:-)嗨,关于这一点,还有一个问题,我知道它是旧的。既然它显示了storeName,不知何故它并不总是更新
{{currentStore?.Name}}
,有时我必须刷新页面才能更新它。@MrNew-Hmm,在没有看到用例的情况下不能说任何事情。可能您在控制台中遇到错误?你能提出一个新问题来阐述这个问题吗?我提出了一个新问题
{{ currentStore?.Name }}