面试题答案
一键面试在Solid.js中,我们可以通过以下方式实现通过props
传递不同的文本和点击事件处理函数给按钮组件:
- 创建按钮组件:
import { createSignal } from 'solid-js';
import { Button } from './Button'; // 假设Button组件单独在Button.js文件
const App = () => {
const [count, setCount] = createSignal(0);
const handleClick = () => setCount(count() + 1);
return (
<div>
<Button text="点击我增加计数" onClick={handleClick} />
<p>计数: {count()}</p>
</div>
);
};
export default App;
- Button组件代码:
import { JSX } from'solid-js';
interface ButtonProps {
text: string;
onClick: () => void;
}
const Button: (props: ButtonProps) => JSX.Element = ({ text, onClick }) => {
return (
<button onClick={onClick}>
{text}
</button>
);
};
export default Button;
在上述代码中:
- 在
App
组件中,我们创建了一个count
信号量和handleClick
函数来更新count
。然后通过props
传递text
和onClick
给Button
组件。 Button
组件接收text
和onClick
属性,并将它们应用到<button>
元素上,这样就实现了按钮在不同场景下有不同的显示文本和点击行为。