LoginSignup
1
1

More than 3 years have passed since last update.

shopify チュートリアルで発生するReferenceError: React is not defined

Last updated at Posted at 2020-12-02

shopifyのアプリ開発を学ぼうとshopify developersにあるチュートリアルを進めていると、Step.4 Polarisでユーザーフェイスを構築で翻訳プロップを追加した後のnpm run dev実行後に画像のようなエラーが出ました。
スクリーンショット 2020-11-25 17.00.58.png

原因

ReferenceError: React is not definedと書いてあるとおり、Reactが定義されていないというエラーが発生しています。
ターミナルにも同様のエラーメッセージが表示されており、ターミナルのエラーメッセージを読んでいくと、_app.jsでエラーが発生していることが分かります。スクリーンショット 2020-11-25 17.09.41.png

解決方法

_app.jsに以下2行を追加します。

import React from 'react';
import ReactDOM from 'react-dom';

この時点で_app.jsのは以下のようになります。

_app.js
import App from 'next/app';
import Head from 'next/head';
import { AppProvider } from '@shopify/polaris';
import '@shopify/polaris/dist/styles.css';
import translations from '@shopify/polaris/locales/en.json';
import React from 'react'; //追加
import ReactDOM from 'react-dom'; //追加

class MyApp extends App {
  render() {
    const { Component, pageProps } = this.props;
    return (
      <React.Fragment>
        <Head>
          <title>Sample App</title>
          <meta charSet="utf-8" />
        </Head>
        <AppProvider i18n={translations}>
          <Component {...pageProps} />
        </AppProvider>
      </React.Fragment>
    );
  }
}

export default MyApp;

これで改めてnpm run devを実行すると正常に動作し、チュートリアルを進めることが可能です。

参考

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1