# React フックを使う
@growi/pluginkit (opens new window) パッケージの growiReact
関数を使用します。
// プラグインのコードで
import React from 'react';
import { growiReact } from '@growi/pluginkit';
// GROWIのReactインスタンスを取得
const growiReactInstance = growiReact(React);
// これでフックが使用可能に
const { useState, useEffect, useCallback } = growiReactInstance;
TIP
React インスタンスの切り替えの仕組み
- 本番環境 (
process.env.NODE_ENV === 'production'
) かつwindow.GrowiFacade.react
が存在する場合は、GROWI の React インスタンスを使用します。 - そうでない場合(開発環境など)は、通常の React インポートを使用します。
- これにより、プラグインを単体で開発する際には通常の React を使い、GROWI 上で実行する際には GROWI の React インスタンスを使用できます。