1 | initial version |
Here is a basic approach to displaying a list of objects obtained from an API in ReactJS and enabling users to filter them through their search inputs:
import React, { Component } from 'react';
class MyComponent extends Component {
constructor(props) {
super(props);
this.state = {
items: [],
search: ''
};
}
componentDidMount() {
fetch('api_url_here')
.then(response => response.json())
.then(data => this.setState({ items: data }));
}
render() {
return (
<div>
{/* display the list of items */}
</div>
);
}
}
export default MyComponent;
render() {
const { items } = this.state;
return (
<div>
<ul>
{items.map(item => (
<li key={item.id}>{item.name}</li>
))}
</ul>
</div>
);
}
render() {
const { items, search } = this.state;
const filteredItems = items.filter(item =>
item.name.toLowerCase().includes(search.toLowerCase())
);
return (
<div>
<input type="text" onChange={event => this.setState({ search: event.target.value })} />
<ul>
{filteredItems.map(item => (
<li key={item.id}>{item.name}</li>
))}
</ul>
</div>
);
}
render() {
const { items, search } = this.state;
const filteredItems = items.filter(item =>
item.name.toLowerCase().includes(search.toLowerCase())
);
return (
<div>
<input type="text" onChange={event => this.setState({ search: event.target.value })} />
<ul>
{filteredItems.map(item => (
<li key={item.id}>{item.name}</li>
))}
</ul>
</div>
);
}
This is just a basic approach to displaying and filtering a list of objects obtained from an API in ReactJS. Depending on your specific use case, you may need to modify this approach to suit your needs.