我在使用 React 和 TypeScript 时遇到了一些问题,现在我坚持让无状态组件成为观察者。顺便说一句,我正在使用 MobX。
无状态组件:
const TaskItem: React.SFC<{task: Task, deleteTask: (e:any) => void}> = (props) => (
<li onClick={ props.deleteTask }>{ props.task.name }</li>
);
下面的代码给出了将 ClassicComponent 分配给 StatelessComponent 的类型不匹配,但我无处可解决。
错误:
[ts]
输入 'ClassicComponentClass void; }>' 不能分配到类型 'StatelessComponent void; }>'。
const TaskItem: React.SFC<{task: Task, deleteTask: (e:any) => void}> = observer((props) => (
<li onClick={ props.deleteTask }>{ props.task.name }</li>
));
如何使无状态组件成为观察者?有没有一种“更漂亮”的方式来写这个?
最佳答案
看起来像这样:
const App = observer((props: {test: string}) =>
<div>{props.test}</div>
);
ReactDOM.render(<App test="sdsdfsddddddddddddddddddf" />
,document.getElementById('root'));
关于javascript - React,带有 typescript 的观察者无状态组件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46486489/