astro react component prop type

src/components/Counter.tsx:

import { useState } from "react";

interface CounterProps {
	count: number;
}

export const Counter = ({ count }: CounterProps) => {
	const [counter, setCounter] = useState(count);
	return (
		<div>
			<button
				onClick={() => {
					setCounter(counter - 1);
				}}
				type="button"
			>
				-
			</button>
			{counter}
			<button
				onClick={() => {
					setCounter(counter + 1);
				}}
				type="button"
			>
				+
			</button>
		</div>
	);
};

src/content/docs/test.mdx:

---
title: testing page.
---

import { Counter } from "../../components/Counter"

<Counter client:visible />
<Counter client:visible count={10} />
posted @ 2024-08-26 17:24  卓能文  阅读(25)  评论(0)    收藏  举报