What is the best way to create buttons corresponding to the total number of "postId" properties in an array retrieved from an API call in Angular 10 using the "ngFor" directive?

export class AlphaComponent implements OnInit {

apiData=[]; //array that stores API data

constructor(private helpService:HelpService){ };

ngOnInit(){

    this.fetchData()

};

fetchData(){

    this.helpService.getPostId().subscribe((jsonData:any) =>{this.apiData = jsonData;

    this.helpService.setJasonData(this.apiData);

    console.log(this.apiData);

    //this.handleApiData();

    });

};

handleApiData(){                                    

    for(let value of this.apiData){ 

    console.log("Data in handleApiData=>",value);

    };

};

}  

Answer №1

.html

<div *ngFor="let item of data">
  <p *ngIf="item.hasOwnProperty('itemId')">Paragraph</p>
</div>

Answer №2

define class AlphaComponent and implement the OnInit interface

an empty array apiData is declared to store data fetched from an API.

a constructor with a parameter of HelpService is defined;

implements the ngOnInit function which calls getData()

this.getData()

defines the getData function

this.helpService.getPostId().subscribe((jsonData:any) =>{this.apiData = jsonData;

this.helpService.setJasonData(this.apiData);

console.log(this.apiData);

this.apiDataArray();   //RUN THIS FOR LOOP

});

defines the apiDataArray function

loops through the apiData array to log each value 

for(let value of this.apiData){ 

console.log("Data in apiDataArray=>",value);

};

========================================IN Alpha.component.html==========================

<button

class="btn btn-success" 

*ngFor="let buttons of 

apiData">{{buttons.postId}} //in place of "postId" any desired property value from the 
                                                                                api

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

Having difficulty updating the value of a FieldArray with setFieldValue in Formik

Thank you for taking the time to read this. I am currently working on creating a form using Formik that involves nesting a FieldArray within another FieldArray. Oddly enough, setFieldValue seems to be functioning correctly as I can log the correct values ...

The Google Maps feature encountered an error (ReferenceError: google is not defined)

Utilizing the Google Maps API on my website to display multiple locations has been successful so far. However, an issue arises when attempting to determine the distance between two sets of latitude and longitude coordinates - resulting in an error message ...

Comparing JSON import methods: HTTP vs require

I discovered two methods for importing local json files into my code. Using angulars http get. This method is well-known for loading json input. It provides the flexibility to easily switch between remote and local json files. Typescript require Anot ...

Redux-toolkit payload does not recognize the specified type

While working on my project, I encountered an issue when using redux-toolkit. I have created the following reducer: setWaypointToEdit: (state, action: PayloadAction<WaypointToEditPayload>) => { let gridPolygonsData: GridPolygonsData; const { ...

I'm having trouble importing an image into my typescript file as it keeps showing a "module not found" error message. Can anyone

I am new to working with TypeScript and I have encountered an issue when trying to import an image from my assets folder. Despite having the image stored in a designated folder, Visual Studio Code notifies me that it cannot find the module. Here is the er ...

How can users create on-click buttons to activate zoom in and zoom out features in a Plotly chart?

I am currently working on an Angular application where I need to implement zoom in and zoom out functionality for a Plotly chart. While the default hoverable mode bar provides this feature, it is not suitable for our specific use case. We require user-cr ...

updating a value in a svelte writable store using cypress

Inside my Svelte application, I am working with a boolean variable. import { writable } from 'svelte/store' export const authorised = writable(false) This variable is imported into App.svelte and other Svelte files, where it can be accessed and ...

Typescript types for React Native's SectionList: A comprehensive guide

Currently, I am in the process of developing a React Native app using TypeScript. In order to display information in a structured manner, I decided to implement a SectionList. Following the official documentation, I have written the following code snippet: ...

What is the best way to mandate the declaration or type of a function in TypeScript?

Let me present my dilemma: I am aiming to create a declaration file containing TypeScript function models. This file will be utilized by various individuals to build their own programs. To achieve this, I have crafted a def.d.ts file with a small example ...

Error encountered while rendering content in an Angular template

I'm currently integrating ngx-carousel into my application. Interestingly, the carousel works perfectly when I manually input the data. However, when trying to fetch the data from the server, it fails to work as expected. Take a look at my code snip ...

Typescript includes empty spaces in its duplicate-checking process

I have been working on removing duplicate values from an array using the following code: for (var i = 0; i < a.length; i++) obj[a[i]] = a[i] a = new Array(); // Checking each object with keys to remove duplicates. for (var key ...

What is the method for adding attributes to a class dynamically in TypeScript so that they can be accessed by instances?

I attempted to create a universal factory function that generates custom enum objects, but the instances were not able to retrieve the correct properties. Take a look at the preview of the code online: https://stackblitz.com/edit/typescript-rkl1zr Workin ...

What is the best way to troubleshoot substrings for accurately reading URLs from an object?

While a user inputs a URL, I am attempting to iterate through an object to avoid throwing an error message until a substring does not match the beginning of any of the URLs in my defined object. Object: export const urlStrings: { [key: string]: string } = ...

Error in Nestjs Swagger: UnhandledPromiseRejectionWarning - The property `prototype` cannot be destructed from an 'undefined' or 'null' object

Currently, I am in the process of developing a Nestjs REST API project and need to integrate swagger. For reference, I followed this repository: https://github.com/nestjs/nest/tree/master/sample/11-swagger However, during the setup, I encountered the foll ...

In fact, retrieve the file from an S3 bucket and save it to your local

I've been attempting to retrieve an s3 file from my bucket using this function: async Export() { const myKey = '...key...' const mySecret = '...secret...' AWS.config.update( { accessKeyId: myKey, secretAcces ...

The initial function is executed only after the second function has completed, as it relies on the

For a small project of mine, I've been attempting to load JSON data. However, the issue arises when the loadDefs function is executed before checking if file_data has been modified. loadDefs(file_path:any) { let file_data:string = '&a ...

Set the initial index position to 0 for the property type

Looking to define a type for the following scenario: categories.categories[0].category.map((c: CategoryObject) => ({ category: c.name[0]._text[0], Can we specify index 0 in the type declaration? For example: type CategoryObject = { name[0]: { _te ...

Leveraging Angular 4-5's HttpClient for precise typing in HTTP requests

Utilizing a helper service to simplify httpClient calls, I am eager to enforce strong typing on the Observable being returned. In my service where I utilize the api Service and attempt to obtain a strongly typed observable that emits: export class ApiU ...

Obtaining an OBJECT from a hashmap instead of a string

In my code, I am working with a hashmap and I want to extract all the values from this map without needing to reference a specific key. Here is a basic overview of the process: Create a hashmap using an external file with a structure of "id:value" Utili ...

What is causing the issue in locating the assert package for VS Code and TypeScript?

My main issue lies with the pre-installed node libraries (path, fs, assert). Let me outline the process that leads to this problem: Begin by launching Visual Studio. Select File > Open Folder, then pick the root core-demo folder. In the file panel, loc ...