Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 链路外部路由器错误,而一切设置正常_Javascript_Reactjs_React Router - Fatal编程技术网

Javascript 链路外部路由器错误,而一切设置正常

Javascript 链路外部路由器错误,而一切设置正常,javascript,reactjs,react-router,Javascript,Reactjs,React Router,好的,我不知道为什么这不起作用。据我所见,一切都安排妥当了 我正在使用“react router dom”:“^5.0.0” 代码还使用,特别是。这不是真的相关,只是想注意一下 代码在不使用子组件链接的情况下工作100%,因此不存在问题 Journal中的网格生成器创建了一个表,该表包含链接单元格,该单元格指向Journal组件 链接组件生成得很好,只是因为我不知道的原因而无法工作 如果在日志组件中注释掉列中的格式化程序行,应用程序将再次工作 App.js import React,{Comp

好的,我不知道为什么这不起作用。据我所见,一切都安排妥当了

我正在使用
“react router dom”:“^5.0.0”

代码还使用,特别是。这不是真的相关,只是想注意一下

代码在不使用子组件链接的情况下工作100%,因此不存在问题

Journal
中的网格生成器创建了一个表,该表包含链接单元格,该单元格指向
Journal
组件

链接组件生成得很好,只是因为我不知道的原因而无法工作

如果在
日志
组件中注释掉
列中的
格式化程序
行,应用程序将再次工作

App.js

import React,{Component}来自'React';
从“react Router dom”导入{BrowserRouter as Router,Route};
从“./components/layout/Header”导入标题;
从“./components/pages/Dashboard”导入仪表板;
从“./组件/页面/日记账”导入日记账;
从“./components/pages/Journal”导入日记账;
类应用程序扩展组件{
render(){
返回(
//     {
取回(“http://localhost:4000/journals")
.then(res=>res.json())
。然后(数据=>{
设置日志(数据)
})
.catch(err=>err);
}, []);
常量日志链接=(道具)=>{
const cellData=props.cell.\u cell.row.data;
let key=cellData.key_
let link=`/journals/${key}`
返回{key};//res.json()
。然后(数据=>{
setJournalItems(数据)
})
.catch(err=>err);
}, []); 
常量列=[
{标题:“文档”,字段:“documentKey”},
{标题:“日期”,字段:“documentDate”},
];
返回(
杂志
)
}
导出默认日记账;
react制表器
重新格式化
与react路由器库不兼容

从源代码来看

function reactFormatter(JSX) {
    return function customFormatter(cell, formatterParams, onRendered) {
        //cell - the cell component
        //formatterParams - parameters set for the column
        //onRendered - function to call when the formatter has been rendered
        onRendered(function () {
            var cellEl = cell.getElement();
            var CompWithMoreProps = React.cloneElement(JSX, { cell: cell });
            react_dom_1.render(CompWithMoreProps, cellEl.querySelector('.formatterCell'));
        });
        return '<div class="formatterCell"></div>';
    };
}
函数反应格式化程序(JSX){
返回函数customFormatter(单元格、formatterParams、onRendered){
//单元-单元组件
//formatterParams-为列设置的参数
//onRendered—在呈现格式化程序时调用的函数
onRendered(函数(){
var celllel=cell.getElement();
var CompWithMoreProps=React.cloneElement(JSX,{cell:cell});
react_dom_1.render(CompWithMoreProps,cellEl.querySelector('.formatterCell'));
});
返回“”;
};
}
格式化元素的呈现使用
ReactDOM.render
函数将格式化元素直接呈现到与父元素隔离的DOM


需要对react制表器进行修复以支持此用例。一种方法是让
customFormatter
返回一个自定义组件,该组件提供了一种从外部设置其状态的方法。然后
onRendered
可以调用此函数来设置
单元格

非常感谢您的回复!我已经提交了一个GitHub问题为此,我将通知您。很遗憾,我无法提出请求来修复此问题,因为我缺乏相关知识。