Angular Compnent - Type '(data: any) => any' отсутствуют следующие свойства типа - PullRequest
0 голосов
/ 10 июня 2019

У меня есть угловой интерфейс и Laravel Endpoint.У меня в Angular модель, сервис.При попытке запустить код я получил эту ошибку.

(свойство) PremiumSmsProductListComponent.products: Cloudsubscription [] Type '(data: any) => any' отсутствуют следующие свойства из типа 'Cloudsubscription[] ': data, success, pop, push и еще 27.ts (2740)

import { Component, OnInit } from '@angular/core';
import { CloudsubscriptionsService } from '../../../services/cloudsubscriptions.service';
import Cloudsubscriptions from '../../../models/cloudsubscriptions';

@Component({
  selector: 'app-premium-sms-product-list',
  templateUrl: './premium-sms-product-list.component.html',
  styleUrls: ['./premium-sms-product-list.component.scss']
})
 export class PremiumSmsProductListComponent implements OnInit {

  isLoadingResults = true;    

  products: Cloudsubscriptions[];
  constructor(private bs: CloudsubscriptionsService) { }
  deleteCloudsubscription(id) {
this.bs.deleteCloudsubscription(id).subscribe(res => {
  console.log('Deleted');
});
  }

  ngOnInit() {

this.bs
.getCloudsubscription()
.subscribe((data: Cloudsubscriptions[]) => {
  console.log(data.data);
  if(data.success==true)
  {
    this.products = data.data;
  }

  });

модели: cloudsubscription.ts

export default class Cloudsubscriptions {
 public msisdn: string;
 public is_subscribe: number;
 public package_id: number;
 public transaction_id: string;
 public platform_transaction_id: number;
 public status: string;
 public amount: string;
 public transaction_type: string;
 public channel: string;
 public service_name: string;
}

Итак, я готовэта ошибка

subscription

enter image description here

Как мне ее решить

1 Ответ

3 голосов
/ 10 июня 2019

Похоже, подписка возвращает массив Cloudsubscriptions.

Если это правда, это должно работать

this.products = data;

Ваш код, похоже, предполагает, что data - это объект со следующей структурой.


data = {
   data : CloudSubscriptions[]
   success: Boolean
}

Вместо console.log(data.data); попробуйте console.log(data), чтобы увидеть, что на самом деле возвращает подписка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...