データベースから選択した項目を削除するAPIメソッドを呼び出すdelete関数を使用しようとする際に問題があります。複数のパラメータを持つ反応関数
APIはページIDを受け入れるだけなので、IDをAPIに送信しようとしています。
これは、アプリケーションのメインコンテナに存在する機能です。
deletePage(id) {
instance.put(`/admin/deletePage/${id}`).then((response) => {
this.getPages();
window.location.replace('/')
}).catch((error) => {
console.log(error)
})
}
私はその後、私は削除を処理するために別の関数を作成するダッシュボードコンポーネントに小道具としてこの機能を伝承:
handleDelete(e, id) {
e.preventDefault()
this.props.deletePage(id)
}
、最終的には、機能をレンダリングマイ:
render() {
const pages = this.props.pages.map((page, i) => {
return (
<div key={i}>
<h2>{page.title}</h2>
<a href={`/admin/edit-page/${i}`}>Edit</a>
<button onClick={this.handleDelete(i)}>Delete</button>
</div>
)
});
return (
<div>
<h2>Dashboard</h2>
{pages}
</div>
);
}
現在、コンソールでこのエラーが発生しています。e.preventDefault is not a function
preventDefault行を削除して、一定のリロードを引き起こします。
助けてください。ちょうどmuffahaを削除しようとしています
前にやっていたのと同じ方法を呼び出すと私は、実際のイベントではありません。 –