ReferenceError:从“apollo-boost”导入 ApolloClient 时未定义要求

Posted

技术标签:

【中文标题】ReferenceError:从“apollo-boost”导入 ApolloClient 时未定义要求【英文标题】:ReferenceError: require is not defined when importing ApolloClient from 'apollo-boost' 【发布时间】:2019-04-11 22:25:10 【问题描述】:

所以我收到这个奇怪的错误,ReferenceError: require is not defined 从“apollo-boost”导入 ApolloClient 时。不导入 ApolloClient 应用程序正在运行,但在导入时显示错误。 错误的屏幕截图在所附图像中: Here is the image

这是我的代码

index.js

import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './components/App';

import  ApolloClient  from 'apollo-boost';
import  ApolloProvider  from 'react-apollo';


const client = new ApolloClient(
    uri:"http://localhost:4444/graphql"
)
ReactDOM.render(
    <ApolloProvider client=client>
        <App />
    </ApolloProvider>
, document.getElementById('root'));

【问题讨论】:

【参考方案1】:

安装 graphql v14.0.2(或新的)。 Graphql 包必须在你的 package.json 中。

有关更多信息,请参阅此处的原始解决方案:https://github.com/apollographql/apollo-link-state/issues/299#issuecomment-421784547

【讨论】:

【参考方案2】:

转到 node_modules/react-scripts/config/webpack.config(两个 dev && prod 文件)


  test: /\.mjs$/,
  include: /node_modules/,
  type: "javascript/auto"
,

上面的代码在rules: [里面过去

【讨论】:

以上是关于ReferenceError:从“apollo-boost”导入 ApolloClient 时未定义要求的主要内容,如果未能解决你的问题,请参考以下文章

ReferenceError:未定义提取

ReferenceError:未定义“警报”

ReferenceError:未定义“PropertiesService”

Laravel 从 5.5 升级到 5.6 到 5.7:未捕获 ReferenceError: axios is not defined

ReferenceError:产品未定义

ReferenceError: React 未定义