STAGE 01 — 1-2 / 環境を整える

対象バージョンを調べる

考えてみよう

これから環境を作ります。あなたが最初に打ち込むべきコマンドは、npm install ... でしょうか?

違います。最初にやるのはインストールではなく「調べる」こと。「どのSPFxバージョンに合わせるのか」「それに対応するNode.jsは何か」——ここを確定させてから、はじめて何かを入れます。順番を守るのが、遠回りしないコツです。

まず、状況は2つのどちらか

「対象バージョンを決める」と言っても、あなたの状況によって進め方が変わります。

この講座は、新規に始めるBを主な想定にしつつ、既存プロジェクトに合わせるAでも困らないよう、両方の調べ方を見ていきます。まずは応用の効く「既存プロジェクトのバージョンの調べ方」から。

A. 既存プロジェクトのSPFxバージョンを調べる

プロジェクトのバージョンは、フォルダ内の package.json を開けば分かります。@microsoft/sp- で始まるパッケージの番号が、そのプロジェクトのSPFxバージョンです。

"dependencies": {
    "@microsoft/sp-core-library": "1.23.0",
    "@microsoft/sp-webpart-base": "1.23.0",
    ...
}

この場合、SPFxバージョンは 1.23.0 だと分かります。あわせて、package.json の先頭近くにある engines も見ておきましょう。ここに「使うべきNode.jsの範囲」が書かれていることがあります。

"engines": {
    "node": ">=22.14.0 < 23.0.0"
}

これは「Node.js は 22.14.0 以上・23未満(=v22系)を使ってね」という意味。プロジェクト自身が、必要なNode.jsを教えてくれているわけです。もう1つ、.yo-rc.json というファイルにも生成時のSPFxバージョン(@microsoft/generator-sharepointversion)が記録されています。

やってみよう

自分のプロジェクトフォルダを開き、package.json の中から次の2つを探してみましょう。

1. @microsoft/sp-core-library の右側の番号(=SPFxバージョン) 2. enginesnode の範囲(=使うべきNode.js)

確認ポイント

この例なら、SPFxは 1.23.0、Nodeは v22系 と読み取れるはずです。この2つが分かれば、あとは「その通りに入れる」だけ。次の記事でNode.jsを入れます。

B. 公式の互換表で調べる(●●=Microsoft Learn)

新規に始める場合や、「1.23にはどのNodeが対応?」を正確に確認したい場合は、Microsoftの公式互換表を見るのが確実です。これがいわば"正解表"です。

> 調べ先(●●): Microsoft Learn > SharePoint Framework
> compatibility(Platform & Toolchain Compatibility Reference)のページ
> https://learn.microsoft.com/sharepoint/dev/spfx/compatibility

このページには、SPFxバージョンごとの対応表が載っています。主要な行を抜き出すと、次のようになっています(2026年時点)。

SPFxNode.js (LTS)TypeScriptReact
1.23.0v22〜v5.817.0.1
1.22.xv22〜v5.817.0.1
1.21.xv22v5.317.0.1
1.20.0v18v4.5, v4.717.0.1
1.19.0v18v4.5, v4.717.0.1
1.18.xv16, v18v4.5, v4.717.0.1

表の見方はシンプルです。まず左端で自分のSPFxバージョンの行を見つけ、その行の「Node.js (LTS)」列を読む。それが入れるべきNode.jsです。この講座は最新安定版の 1.23.0 の行を見るので、Node.js は v22 ——これで確定です。

ゆみちゃん
ゆみ

表は「左でSPFxの行を探す→Nodeの列を読む」。この2ステップだけ。ちなみにReactが17.0.1で固定なのも大事なポイント。SPFxのReactは"勝手に新しくしちゃダメ"なの。ここは後のステージでまた出てくるよ。

いまのPCの状態も確認しておく

「入れるべきもの」が分かったら、いま自分のPCに何が入っているかも確認しておきましょう。すでにNode.jsが入っているかもしれません。ターミナル(PowerShell)で次を実行します。

node --version

この記事のまとめ

「入れるべきNode.jsのバージョン」が確定しました。いよいよ次で、実際にNode.jsを入れます。

用語メモ
package.json
プロジェクトの設定・依存関係が書かれた中心ファイル。SPFxバージョンはここで分かる
engines
package.json内の項目。使うべきNode.jsの範囲を宣言していることがある
.yo-rc.json
Yeomanジェネレーターが残す記録ファイル。生成時のSPFxバージョンが分かる
compatibility
Microsoft Learnの公式互換表ページ。SPFxとNode/TypeScript/Reactの対応の"正解表"