Это ответ, который я получаю через свой html-документ.Guys Я хочу отображать значения в формате таблицы в ionic. Поэтому я использую сетку, чтобы получить тот же результат. Когда дело доходит до анализа данных из ответа json, я сталкиваюсь с множеством проблем. Я создал ответ json и хочу отобразить значения в формате таблицы. Это мой ответ json.
{
"success": true,
"data": [{
"iMISParamCatID": "1",
"vCatName": "Alerts",
"iLocID": "1",
"paramname": "-ve Batches",
"fValue": "399.00"
},, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "6",
"paramname": "Discounts",
"fValue": "367.48"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "7",
"paramname": "Discounts",
"fValue": "530.21"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "1",
"paramname": "Owners",
"fValue": "-1.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "2",
"paramname": "Owners",
"fValue": "3869.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "3",
"paramname": "Owners",
"fValue": "-1.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "4",
"paramname": "Owners",
"fValue": "-1.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "5",
"paramname": "Owners",
"fValue": "-1.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "6",
"paramname": "Owners",
"fValue": "-1.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "7",
"paramname": "Owners",
"fValue": "343.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "1",
"paramname": "Staff",
"fValue": "547.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "2",
"paramname": "Staff",
"fValue": "1422.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "3",
"paramname": "Staff",
"fValue": "-1.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "4",
"paramname": "Staff",
"fValue": "-1.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "5",
"paramname": "Staff",
"fValue": "1294.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "6",
"paramname": "Staff",
"fValue": "175.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "7",
"paramname": "Staff",
"fValue": "1227.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "1",
"paramname": "Margin",
"fValue": "14.92"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "2",
"paramname": "Margin",
"fValue": "19.18"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "3",
"paramname": "Margin",
"fValue": "8.87"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "4",
"paramname": "Margin",
"fValue": "9.38"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "5",
"paramname": "Margin",
"fValue": "17.58"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "6",
"paramname": "Margin",
"fValue": "20.65"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "7",
"paramname": "Margin",
"fValue": "17.00"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "1",
"paramname": "Profit",
"fValue": "13227.30"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "2",
"paramname": "Profit",
"fValue": "91215.79"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "3",
"paramname": "Profit",
"fValue": "39471.89"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "4",
"paramname": "Profit",
"fValue": "27122.51"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "5",
"paramname": "Profit",
"fValue": "18488.92"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "6",
"paramname": "Profit",
"fValue": "13984.54"
}, {
"iMISParamCatID": "2",
"vCatName": "Sales",
"iLocID": "7",
"paramname": "Profit",
"fValue": "11667.46"
}, {
"iMISParamCatID": "6",
"vCatName": "Accounts",
"iLocID": "1",
"paramname": "Register",
"fValue": "69150.00"
}, {
"iMISParamCatID": "6",
"vCatName": "Accounts",
"iLocID": "2",
"paramname": "Register",
"fValue": "-1.00"
}, {
"iMISParamCatID": "6",
"vCatName": "Accounts",
"iLocID": "3",
"paramname": "Register",
"fValue": "1.00"
}, {
"iMISParamCatID": "6",
"vCatName": "Accounts",
"iLocID": "4",
"paramname": "Register",
"fValue": "25470.00"
}, {
"iMISParamCatID": "6",
"vCatName": "Accounts",
"iLocID": "5",
"paramname": "Register",
"fValue": "58819.00"
}, {
"iMISParamCatID": "6",
"vCatName": "Accounts",
"iLocID": "6",
"paramname": "Register",
"fValue": "42650.00"
}, {
"iMISParamCatID": "6",
"vCatName": "Accounts",
"iLocID": "7",
"paramname": "Register",
"fValue": "68228.00"
}]
}
Это мой html файл
<ion-content>
<ion-grid>
<ion-row>
<ion-col>
Display Date
</ion-col>
<ion-col>
#1
</ion-col>
<ion-col>
#2
</ion-col>
<ion-col>
#3
</ion-col>
<ion-col>
#4
</ion-col>
<ion-col>
#5
</ion-col>
<ion-col>
#6
</ion-col>
<ion-col>
#7
</ion-col>
<ion-col>
Total
</ion-col>
</ion-row>
<ion-row>
<ion-col>
Category Name
</ion-col><br>
</ion-row>
</ion-grid>
<ion-grid>
<ion-row>
<ion-col>
Category Params
</ion-col>
<ion-row *ngFor = "let category of data?.data">
<ion-col>
{{category.fValue}}
</ion-col>
</ion-row>
</ion-row>
</ion-grid>
</ion-content>
А это мой ts файл.
export class HomePage {
posts: any;
leaddetails: any;
constructor(public navCtrl: NavController,
private http: Http) {
// window.open("http://google.com",'_system', 'location=yes');
let headers = new Headers();
headers.append('Content-Type', 'application/json');
let options = new RequestOptions({ headers: headers });
this.http.post('http://url/foldername/file.php',options)
.map(res => res.json())
.subscribe(data => {
console.info("Api Fired",data);
this.data = data;
});
}
}
Я просто хочу, чтобы значения были напечатаны под именами столбцов, и, как видно из моего ответа выше, мне нужно напечатать vCatName и paramsname. Я новичок в ионных технологиях, мне просто нужно руководство.
мне нужно распечатать данные в таблице / сетке. поэтому мне нужно прочитать значения из ответа и распечатать его на странице.
Но вы упомянули, что сталкиваетесь с проблемами, пытаясь это сделать, что это за проблемы?
данные, когда я пытаюсь распечатать, дают мне эту ошибку data.json не является функцией
let leaddetails = data.json(); - это твоя проблема. Вы пытаетесь вызвать свойство как функцию.
Я обновил свой код, теперь я получаю ошибку: Не удается найти другой поддерживающий объект «[объект объекта]» типа «объект». NgFor поддерживает привязку только к Iterables, таким как Arrays.
Вам нужно разобрать объект JSON.parse().
добавил эту строку this.data = JSON.parse (this.data); вместо this.data = data
получить эту ошибку Неожиданный токен u в JSON в позиции 0
Убедитесь, что ваш ответ правильный JSON.
Я проверил свой json на jsonlint, и это действительный json
Я обновил свой ответ, и ваше руководство помогло мне добиться этого результата @ Script47. Теперь мне просто нужно распечатать их по порядку!






export class HomePage {
posts: any;
leaddetails: any;
alldata: Observable<any>; //<-- this add first
и в свой http-пост;
.subscribe(data => {
console.info("Api Fired",data);
this.alldata = data; //<--this add
});
позже ваш html файл;
<ion-content>
<ion-grid>
<ion-row *ngFor = "let item of alldata">
<ion-col>
{{item.iMISParamCatID}}
</ion-col>
<ion-col>
{{item.vCatName}}
</ion-col>
<ion-col>
{{item.iLocID}}
</ion-col>
<ion-col>
{{item.paramname}}
</ion-col>
<ion-col>
{{item.fValue}}
</ion-col>
<ion-row>
<ion-grid>
<ion-content>
данные не отображаются
изменен на * ngFor = "let item of alldata? .data" работал у меня
если я хочу напечатать определенное значение, как мне его распечатать? например: vCatName
С какой именно проблемой вы столкнулись?