我一直在我的 React + Typescript 中实现 MGT 工具包。这一切都运作良好,但我试图在卡片的模板中添加一个按钮。但是 onClick 似乎不起作用,我假设这与它是模板的事实有关。
我看到可能存在问题,因为它是一个可能会被复制的模板,但我认为下面的工作会很好。但无论我得到什么,我都无法从
const mgtPersonRef = useRef<null | MgtPerson>(null);
useEffect(() => {
const mgtPerson = mgtPersonRef.current;
if (mgtPerson === null) {
return;
}
mgtPerson.personCardInteraction = PersonCardInteraction.hover;
const button= mgtPerson.querySelector('#' + BUTTON);
if (button) {
button.addEventListener('onmousedown', () => {console.log("DONE IT!")});
return button.removeEventListener('onmousedown', () => void 0);
}
}, [mgtPersonRef.current]);
return <mgt-person
show-name={true}
user-id={id}
ref={mgtPersonRef}
>
<template data-type="person-card">
<mgt-person-card person-details="{{person}}" >
{
showButton
? <template data-type="additional-details">
<button
id={BUTTON}
>Click me</button>
</template>
: null
}
</mgt-person-card>
</template>
</mgt-person>;