InvoiceScreen.js 830 B

1234567891011121314151617181920212223242526272829303132
  1. import React, { useEffect, useState } from 'react';
  2. import { View, Text, FlatList, CheckBox, Alert } from 'react-native';
  3. import { fetchInvoices, markAsPaid } from '../utils/api';
  4. const InvoiceScreen = () => {
  5. const [invoices, setInvoices] = useState([]);
  6. useEffect(() => {
  7. fetchInvoices(setInvoices);
  8. }, []);
  9. return (
  10. <View>
  11. <FlatList
  12. data={invoices}
  13. keyExtractor={(item) => item._id}
  14. renderItem={({ item }) => (
  15. <View>
  16. <Text>{`Invoice Number: ${item.invoiceNumber}`}</Text>
  17. <Text>{`Due Date: ${item.dueDate}`}</Text>
  18. <CheckBox
  19. value={item.paid}
  20. onValueChange={() => markAsPaid(item._id, setInvoices)}
  21. />
  22. </View>
  23. )}
  24. />
  25. </View>
  26. );
  27. };
  28. export default InvoiceScreen;