Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.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 未捕获(承诺中)TypeError:无法读取未定义的属性“remove”_Javascript_Reactjs_Ecmascript 6_React Redux - Fatal编程技术网

Javascript 未捕获(承诺中)TypeError:无法读取未定义的属性“remove”

Javascript 未捕获(承诺中)TypeError:无法读取未定义的属性“remove”,javascript,reactjs,ecmascript-6,react-redux,Javascript,Reactjs,Ecmascript 6,React Redux,我犯了一个奇怪的错误 另一个答案是,这与不正当进口有关。我尝试过几种方法,比如var render\u product\u url=function。。。。诸如此类,一切都失败了 AddRendering.js import React from "react" export function add_rendering(headers, target_header, rendering_callback) { var new_headers = []; for (let i

我犯了一个奇怪的错误

另一个答案是,这与不正当进口有关。我尝试过几种方法,比如var render\u product\u url=function。。。。诸如此类,一切都失败了

AddRendering.js

import React from "react"


export function add_rendering(headers, target_header, rendering_callback) {
    var new_headers = [];
    for (let i = 0; i < headers.length; i++){
        var this_header = headers[i];
        if (this_header == target_header){
            var header_object = {
                title: target_header,
                render: rendering_callback
            };
            new_headers.push(header_object);
        } else {
            new_headers.push(this_header);
        }
    }
    return new_headers
}

function render_product_url(val, row) {
    return (<a href={"http://www.website.com/product/" + row[target_header]} target="_blank">{row[target_header]}</a>)
}

export function render_product_url_in_datatable(headers, target_header) {
    return add_rendering(
        headers,
        target_header,
        render_product_url
    )
}
最奇怪的是这部作品:

import React from "react"


export function add_rendering(headers, target_header, rendering_callback) {
    var new_headers = [];
    for (let i = 0; i < headers.length; i++){
        var this_header = headers[i];
        if (this_header == target_header){
            var header_object = {
                title: target_header,
                render: rendering_callback
            };
            new_headers.push(header_object);
        } else {
            new_headers.push(this_header);
        }
    }
    return new_headers
}

// function render_product_url(val, row) {
//     return (<a href={"http://www.website.com/p/" + row[target_header]} target="_blank">{row[target_header]}</a>)
// }

export function render_product_url_in_datatable(headers, target_header) {
    return add_rendering(
        headers,
        target_header,
        function render_product_url(val, row) {
            return (<a href={"http://www.website.com/p/" + row[target_header]} target="_blank">{row[target_header]}</a>)
        }
    )
}
我发现与普通语言相比,这种JS导入语法笨拙,但这对于JS来说是正常的

为什么不能使用JavaScript文件中别处声明的函数?这是在使用ES6和React。

在AddRendering.js上,您是否没有发布缺少导入或其他内容的整个代码?或者您忘记将target_header作为参数包含在render_product_url函数中,但val参数是什么

function render_product_url(val, row) {
    return (<a href={"http://www.website.com/product/" + row[target_header]} target="_blank">{row[target_header]}</a>)
}

奇怪的是,你甚至到了那里,因为target\u头不在范围内。我相信它正在传递它从render\u product\u url\u中得到的东西,在\u datatableheaders,target中_header@codyc4321,当它位于render_product_url_in_datatable中时,它可以从函数参数中获取,但在第一个示例中,另一个函数render_product_url在scope.ohhh上没有target_头,这是有意义的。在先前的导出/导入错误之后,我倾向于认为我的导出语法是错误的。谢谢如果你写回信,我会接受的
return add_rendering(
            headers,
            target_header,
            function(val, row) {
              ..
            }
function render_product_url(val, row) {
    return (<a href={"http://www.website.com/product/" + row[target_header]} target="_blank">{row[target_header]}</a>)
}
import target_header from './path/to/target_header'; // in case of a default export
import {target_header} from './path/to/target_header'; // in case of name export