javascript - 类型错误 : Cannot read property 'history' of undefined in Jquery - React

标签 javascript jquery reactjs react-router

我一直在我的 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 }
            }
        });
    });

关于javascript - 类型错误 : Cannot read property 'history' of undefined in Jquery - React,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60213916/

相关文章:

javascript - 用户端各自时间

javascript - Handsontable - 手动重新渲染网格

javascript - 通过 Enter 键和提交按钮提交表单

javascript - 如何在组件触发的函数中使用 to action?

javascript - React中将数据从子组件传递到父组件

javascript - Jquery Ajax 无法从 ASP.NET WEB API 获取数据

javascript - 使用正则表达式替换javascript中字符串中的多个值

javascript - 10秒后关闭弹出窗口

php - 当使用 jQuery 的 .load 函数加载页面时保护 php

reactjs - 在基于类的组件中使用调度会出现无效钩子(Hook)调用的错误