我想更改徽章的价值。 我通过HTTP调用在Json中完美地获得了值和Id。
在for
内,我有:val = items[key];
VAL 是徽章的新值,项[密钥] 是要更改的特定徽章。
在jQuery中,我确实喜欢这个:
$("#"+items[key]).text("").text(val);
在Ionic 2中,我该怎么做?
API工作正常。正确返回所有值。
我的userpage.html
是:
<ion-list>
<ion-item>
<ion-icon name="person" item-left></ion-icon>
Profiles
<ion-badge id="profiles_total" item-right>0</ion-badge>
</ion-item>
<ion-item>
<ion-icon name="create" item-left></ion-icon>
Blogs
<ion-badge id="blogs_total" item-right>0</ion-badge>
</ion-item>
</ion-list>
我的userpage.ts
有这个:
var headers = new Headers();
headers.append('Content-Type', 'application/x-www-form-urlencoded');
var r = new Promise(resolve => {
this.http.post('mobapi/mob.php?action=get_totals', {headers: headers}).subscribe(data => {
if(data.json().success){
var items = data.json().items;
var key;
var val;
for (key in items) {
val = items[key];
}
resolve(true);
} else {
resolve(false);
}
});
});
谢谢!
答案 0 :(得分:0)
我改变了我的userpage.html
:
注意:我稍后会解释
<ion-list>
<ion-item *ngFor="let item of items">
<ion-icon name="{{item.icon}}" item-left></ion-icon>
{{item.name}}
<ion-badge id="{{item.id}}" item-right>{{item.count}}</ion-badge>
</ion-item>
</ion-list>
在上面的代码中,我创建了一个循环,在我想要重复的元素中使用此参数:*ngFor="let item of items"
"item" is the variable that I created to access the data.
"items" is the object created in code below. This variable contains all items to repeat.
我改变了我的TS文件userpage.ts
:
var headers = new Headers();
headers.append('Content-Type', 'application/x-www-form-urlencoded');
var r = new Promise(resolve => {
this.http.post('mobapi/mob.php?action=get_totals', {headers: headers}).subscribe(data => {
if(data.json().success){
this.items = data.json().items;
resolve(true);
} else {
resolve(false);
}
});
});
在上面的代码中,我将数据对象保存在变量中:
this.items = data.json().items;
此变量在HTML中用于执行循环(*ngFor="let item of items"
)。
重要信息:
您需要在open类下面声明变量items
,如下所示:
export class UserPage {
items: any;