blob: af837d9e1b5ecdfaada9dcd2da41347b8b548379 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
"use client";
import { useEffect, useState } from "react";
import { BitcoinPrice as btcPrice } from "../utils/bitcoin-price";
export const BitcoinPrice = () => {
const [isLoading, setLoading] = useState(false);
const bitcoinPrice = btcPrice();
const formatCurrency = (val: string) => {
const n = parseFloat(val);
const formatter = new Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
maximumFractionDigits: 0,
});
return formatter.format(n);
};
useEffect(() => setLoading(!bitcoinPrice), [bitcoinPrice]);
if (isLoading || !bitcoinPrice) return <p>Loading...</p>;
return <div>Bitcoin price: {formatCurrency(bitcoinPrice)}</div>;
};
|