无法读取未定义的属性“getRequest” - 中继

Posted

技术标签:

【中文标题】无法读取未定义的属性“getRequest” - 中继【英文标题】:Cannot read property 'getRequest' of undefined - Relay 【发布时间】:2019-08-01 03:21:26 【问题描述】:

我正在尝试进行第一个中继查询。我做了npm run relaynpm run build。一切正常,但在控制台中我收到错误:

有人知道是什么原因导致这个错误吗?

更新。

Table.js(我要查询的组件)

import React,  Component  from 'react';
import  graphql, QueryRenderer  from 'react-relay';

const environment = import('../../environment.js');

class Table extends Component 

    render() 
        return (

        <QueryRenderer
            environment=environment
            query=graphql`
                query TableQuery 
                    users 
                        data 
                            name
                        
                    
                  
            `
            render=(error, props) => 
                return <div>User: 1</div>;
            
        />
        );
    


export default Table;

environment.js(中继配置)

import 
    Environment,
    Network,
    RecordSource,
    Store,
 from 'relay-runtime';

function fetchQuery(
    operation,
    variables,
) 
    return fetch('/graphql', 
        method: 'POST',
        headers: 
            'content-type': 'application/json'
        ,
        body: JSON.stringify(
            query: operation.text,
            variables,
        ),
    ).then(response => 
        return response.json();
    );


const network = Network.create(fetchQuery);
const store = new Store(new RecordSource());

const environment = new Environment(
    network,
    store
);

export default environment;

一切都来自文档设置页面。

【问题讨论】:

你能分享导致这个错误的代码吗?如果他们只能看到控制台中的错误,那么没有人能够帮助您。 @Matt 我更新了。 【参考方案1】:

Table.js 中,您似乎混淆了导入的语法:

const environment = import('../../environment.js'); // Wrong

const environment = require('../../environment.js'); // OK
import environment from '../../environment.js'; // OK

使用import('../../environment.js') 使其成为一个动态导入,它返回一个 Promise(取决于您的捆绑器配置)并且不太可能是您想要的。

【讨论】:

以上是关于无法读取未定义的属性“getRequest” - 中继的主要内容,如果未能解决你的问题,请参考以下文章

无法读取未定义类型错误的属性“推送”:无法读取未定义错误的属性“推送”

带有 Ionic 4 的 SQLite?无法读取未定义类型错误的属性“then”:无法读取未定义的属性“then”

`无法读取未定义的属性(读取'组件')`

NextJS:未捕获的类型错误:无法读取未定义的属性(读取“属性”)

使用地图时反应'无法读取未定义的属性'

如何使用自定义错误消息捕获“TypeError:无法读取未定义的属性(读取'0')”?