角度4 [对象] [英] Angular 4 [object Object]
本文介绍了角度4 [对象]的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图迭代一个数组,但dom正在显示[object Object]。在其他线程中,有些人建议使用Stringify,然后显示信息,但我不能迭代字符串。感谢您的帮助。
Im trying to iterate over an array but the dom is displaying [ object Object] instead. In other threads some people recommended to use Stringify and then it display the info but I can't iterate over a string. Thanks for your help.
这是我的代码:
html
<div *ngFor="let price of prices">
{{prices}}
</div>
service.ts
service.ts
import { Injectable } from '@angular/core';
import { Http, Headers, Response } from '@angular/http';
import 'rxjs/add/operator/toPromise';
import {Observable} from "rxjs";
import 'rxjs/Rx';
import 'rxjs/add/operator/catch';
import { MarketViewModel } from '../comprarmonedas/datosmoneda'
@Injectable()
export class BittrexService {
constructor(private http: Http, private marketModel : MarketViewModel) { }
public getPrices() :Observable<MarketViewModel> {
return this.http.get('https://bittrex.com/api/v1.1/public/getmarketsummary?market=btc-zec')
.map((response: Response) => response.json());
}
}
interface
export class MarketViewModel {
public success : boolean;
public message : string;
public result : MarketListObject[];
}
export class MarketListObject {
public MarketName : string;
public High : number;
public Low : number;
public Volume : number;
public Last : number;
public BaseVolume : number;
public TimeStamp : number;
public Bid : number;
public Ask : number;
public OpenBuyOrders : number;
public OpenSellOrders : number;
public PrevDay : number;
public Created : number;
}
component.ts
component.ts
import { Component, OnInit } from '@angular/core';
import { Http, Response, Headers } from '@angular/http';
import { BittrexService } from '../../bittrex/bittrex.service';
import {Observable} from "rxjs";
@Component({
selector: 'app-comprarzec',
templateUrl: './comprarzec.component.html',
styleUrls: ['./comprarzec.component.scss']
})
export class ComprarzecComponent implements OnInit {
private prices = [];
constructor(private bittrexService: BittrexService) {
this.bittrexService = bittrexService;
}
ngOnInit(){
this.bittrexService.getPrices()
.subscribe(
data => this.prices = data.result
);
}
}
推荐答案
替换这个:
<div *ngFor="let price of prices">
High : {{price.High}} , Low : {{price.Low}}
</div>
你试图打印一系列的主题价格
,
它应该是价格
不是价格
You were trying to print array of obejcts prices
,
It should be price
not prices
High : {{price.High}} , Low : {{price.Low}}
像这样你可以访问任何给定的值:
Like this you can access any of the given values :
{
"MarketName": "BTC-ZEC",
"High": 0.16290000,
"Low": 0.13087156,
"Volume": 12760.98721068,
"Last": 0.15650003,
"BaseVolume": 1908.20341779,
"TimeStamp": "2017-06-14T19:15:25.57",
"Bid": 0.15650003,
"Ask": 0.15786551,
"OpenBuyOrders": 1130,
"OpenSellOrders": 1257,
"PrevDay": 0.13380000,
"Created": "2016-10-28T17:13:10.833"
}
这篇关于角度4 [对象]的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文