我一直在为我的React项目使用datatables.net。我在每一行上创建了两个操作按钮(编辑,删除)。现在,只要此侦听器运行,则“ this”将不起作用。如果我将jquery函数转换为箭头函数,则“ this.props ...”有效,但数据未定义。

$('#data-table-zero').on('click', '.edit-button', function() {
        const data = $('#data-table-zero').DataTable().row($(this).parents('tr')).data();
        this.props.history.push({
            pathname: `/add-product`,
            state: {
                selectedRecord: { ...data }
            }
        });
    });

最佳答案

Please read this

我希望这能帮到您,

let that = this
$('#data-table-zero').on('click', '.edit-button', function() {
        const data = $('#data-table-zero').DataTable().row($(this).parents('tr')).data();
        that.props.history.push({
            pathname: `/add-product`,
            state: {
                selectedRecord: { ...data }
            }
        });
    });

08-06 03:10
查看更多