【问题标题】:Cannot read property 'getRequest' of undefined - Relay无法读取未定义的属性“getRequest” - 中继
【发布时间】: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 我更新了。

标签: javascript reactjs graphql relay


【解决方案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(取决于您的捆绑器配置)并且不太可能是您想要的。

【讨论】:

    猜你喜欢
    • 2017-06-01
    • 1970-01-01
    • 2020-04-06
    • 2020-10-30
    • 2019-10-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多