React
React は、カプセル化されたコンポーネントから複雑なインタラクティブユーザーインターフェースを構築するための JavaScript ライブラリです。React オフィシャル Web サイト(英語)からライブラリの詳細を参照してください。
AppCode は、React と統合され、lint の設定、編集、実行、デバッグ、アプリケーションの保守を支援します。
始める前に
お使いのコンピューターに Node.js(英語) がインストールされていることを確認してください。
JavaScript and TypeScript および JavaScript Debugger に必要なプラグインが設定 | プラグインページのインストール済みタブで有効になっていることを確認します。詳細については、プラグインのマッピングを参照してください。
既存の React アプリケーションから始める
既存の React アプリケーションの開発を継続するには、AppCode で開き、必要な依存関係をダウンロードします。
すでにマシン上にあるアプリケーションソースを開く
ウェルカム画面でオープンをクリックするか、メインメニューからを選択します。開いたダイアログで、ソースが保存されているフォルダーを選択します。
バージョン管理からアプリケーションのソースをチェックアウト
ウェルカム画面で VCS から取得をクリックします。
または、メインメニューからまたは を選択します。
メインメニューの Git の代わりに、プロジェクトに関連付けられている他のバージョン管理システムが表示される場合があります。例: Mercurial または Perforce。
開いたダイアログで、リストからバージョン管理システムを選択し、アプリケーションソースをチェックアウトするリポジトリを指定します。詳細については、プロジェクトをチェックアウトする (クローン) を参照してください。
依存関係をダウンロードする
ポップアップで 'npm install' の実行または実行 'yarn install' をクリックします。

npm(英語)、Yarn 1(英語)、Yarn 2(英語) を使用できます。詳細については、npm および Yarn を参照してください。
エディターまたはプロジェクトツールウィンドウの package.json のコンテキストメニューから 'npm install' の実行または実行 'yarn install' を選択します。
プロジェクトのセキュリティ
AppCode の外部で作成され、そこにインポートされたプロジェクトを開くと、AppCode は、未知ソースコードを使用してこのプロジェクトを処理する方法を決定できるダイアログを表示します。

次のいずれかのオプションを選択します。
セーフモードでプレビュー : この場合、AppCode はプロジェクトをプレビューモードで開きます。これは、プロジェクトのソースを参照することはできますが、タスクやスクリプトを実行したり、プロジェクトを実行 / デバッグしたりすることはできないことを意味します。
AppCode はエディター領域の上部に通知を表示し、プロジェクトを信頼する…リンクをクリックして、いつでもプロジェクトをロードできます。
プロジェクトを信頼 : この場合、AppCode はプロジェクトを開いてロードします。つまり、プロジェクトが初期化され、プロジェクトのプラグインが解決され、依存関係が追加され、すべての AppCode 機能が利用可能になります。
開かない : この場合、AppCode はプロジェクトを開きません。
プロジェクトのセキュリティの詳細を参照してください。
コード補完
AppCode は、React API にコード補完を提供し、JavaScript コードに JSX(英語) を提供します。コード補完は、React メソッド、React 固有の属性、HTML タグとコンポーネント名、React イベント(英語)、コンポーネントプロパティなどに対して機能します。React オフィシャル Web サイト(英語)から詳細を参照してください。
React メソッドのコード補完と React 固有の属性を取得するには、プロジェクトのどこかに react.js ライブラリファイルが必要です。通常、ライブラリはすでに node_modules フォルダーにあります。
完全な React メソッド、属性、イベント
デフォルトでは、入力時にコード補完ポップアップが自動的に表示されます。例:

JSX タグでは、AppCode は className や classID などの React 固有の属性(英語)、および key や ref などの非 DOM 属性(英語)のコーディング支援を提供します。さらに、自動補完は、プロジェクトの CSS ファイルで定義されているクラスの名前に対しても機能します。

onClick や onChange などのすべての React イベント(英語)は、波括弧 ={} または引用符 "" と一緒に自動的に補完することもできます。

デフォルトでは、波括弧が挿入されます。AppCode に常に引用符を追加させるか、TypeScript 定義ファイル (d.ts)(英語) のタイプに基づいて引用符または中括弧から選択することができます。デフォルト設定を変更するには、環境設定ダイアログ(Ctrl+Alt+S)を開き、 に移動して、JSX 属性の追加リストから該当するオプションを選択します。

また、波括弧内の JavaScript 式の補完も可能です。これは、定義したすべてのメソッドと関数に適用されます。

完全な HTML タグとコンポーネント名
AppCode は、JavaScript や他のコンポーネントのメソッドの内部で定義した HTML タグとコンポーネント名に対してコード補完を提供します。

補完は、ES6 形式の構文を持つインポートされたコンポーネントに対しても機能します。

完全なコンポーネントプロパティ
AppCode は、propTypes を使用して定義されたコンポーネントプロパティに対してコード補完を提供し、それらの定義を迅速に移動またはプレビューできるように解決します。

コンポーネントの名前を自動補完すると、AppCode は必要なすべてのプロパティを自動的に追加します。必要なプロパティの一部がコンポーネントの使用に欠落している場合、AppCode はそのことについて警告します。
HTML 属性を JSX に転送する
クラス属性またはイベント時ハンドラーを含む HTML コードをコピーして JSX に貼り付けると、AppCode はこれらの属性を React 固有のものに自動的に置き換えます。( className、onClick、onChange など)

これは TSX でも機能します。

HTML コードを JSX または TSX に「そのまま」コピーするには、そのまま貼り付け Ctrl+Alt+Shift+V を使用するか、環境設定ダイアログ(Ctrl+Alt+S)を開き、 に移動して、HTML を JSX ファイルに貼り付けるときに属性を変換するチェックボックスをオフにします。
React コードスニペット
AppCode には、React アプリでよく使用されるさまざまなステートメントとコードのブロックに展開する 50 を超えるコードスニペットのコレクションが付属しています。以下の例は、rcjc 省略形を使用して、新しい React コンポーネントを定義するクラスを作成する方法を示しています。

スニペットから React コード構成を作成する
必要な省略形をエディターに入力し、Tab を押します。
Ctrl+J を押して、関連するスニペットを選択します。検索を絞り込むには、略語の入力を開始してから、補完リストから選択します。
詳細はライブテンプレートを参照してください。
使用可能なすべての React スニペットのリストを表示する
環境設定ダイアログ(Ctrl+Alt+S)で、エディターのライブテンプレートをクリックし、React ノードを展開します。
JSX の Emmet
AppCode では、HTML だけでなく、特別な React twists を利用して JSX コードでも Emmet(英語) を使用できます。例: 略語 div.my-class は JSX では <div className=” my-class"></div> に展開されますが、HTML のように <div class=” my-class"></div> には展開されません。

React アプリケーションを移動する
基本的なナビゲーションに加えて、AppCode は React 固有のコード要素間を移動できます。
波括弧
{}内のメソッドまたは JavaScript 式の宣言に移動するには、メソッドまたは式を選択して Ctrl+B を押します。コンポーネントの宣言に移動するには、コンポーネント名を選択して Ctrl+B を押します。
コンポーネント定義を表示するには、Ctrl+Shift+I を押します。

コンポーネントの簡単なドキュメントを表示するには、Ctrl+Q を押します。JavaScript ドキュメントの検索の詳細を参照してください。


React アプリケーションをリントする
JavaScript および HTML 用のすべての AppCode 組み込みコードインスペクションは、JSX コードでも機能します。AppCode は、未使用の変数や関数、終了タグの欠落、ステートメントの欠落などの場合に警告を発します。

いくつかのインスペクションのために AppCode はクイックフィックスを提供します。たとえば、欠落しているメソッドを追加することを提案します。クイックフィックスポップアップを表示するには、Alt+Enter を押します。
インスペクションのリストをカスタマイズするには、環境設定ダイアログ(Ctrl+Alt+S)を開き、エディター、エディターの順に移動します。インスペクション、および表示したくないインスペクションを無効にするか、重大度レベルを変更します。インスペクションの無効化と有効化およびインスペクションの重大度を変更するから詳細を参照してください。
ESLint
組み込みコードインスペクションを提供するだけでなく、AppCode は、JSX コード用の ESLint(英語) などのリンターとも統合します。ESLint は、プラグインで拡張できる幅広い lint ルールをもたらします。AppCode は、入力時に ESLint によって報告された警告とエラーをエディターに表示します。ESLint を使用すると、JavaScript 標準スタイル(英語)を使用したり、TypeScript コードをリントしたりすることもできます。
詳細は ESLint を参照してください。
ESLint に React JSX 構文を正しく理解させるには、eslint-plugin-react(英語) が必要です。このプラグインでは、表示名が React コンポーネントに設定されていない場合や、危険な JSX プロパティが使用されている場合など、警告が表示されます。

React プロジェクトに ESLint をインストールして構成する
組み込みターミナル()で、次のように入力します。
npm install --save-dev eslint npm install --save-dev eslint-plugin-reactESLint 構成ファイル .eslintrc.* をプロジェクトに追加します。これは、.eslintrc、.eslintrc.json、または .eslintrc.yaml ファイル、サポートされている別の形式のファイルにすることができます。詳細については、ESLint 公式 Web サイト(英語)を参照してください。
環境設定ダイアログ(Ctrl+Alt+S)で、言語 & フレームワーク | JavaScript | コード品質ツール | ESLint に移動し、自動 ESLint 構成を選択します。AppCode は、プロジェクト node_modules フォルダー内の ESLint を自動的に検索し、.eslintrc.* ファイルまたは package.json 内の
eslintConfigプロパティからデフォルト構成を使用します。または、手動 ESLint 構成を選択して、カスタム ESLint パッケージと構成を使用します。
詳細は AppCode での ESLint のアクティブ化と構成を参照してください。
.eslintrc 構造体の例 (react プラグイン付き ESLint 1.x)
ecmaFeaturesオブジェクトに"jsx" = trueを追加します。ここでは、ES6 クラス、モジュールなど、使用したい追加の言語機能も指定できます。pluginsオブジェクトに、reactを追加します。rulesオブジェクトでは、有効にしたい ESLint ビルトインルール(英語)と、react プラグインを介して利用可能なルール(英語)を一覧表示できます。{ "parser": "babel-eslint", "env": { "browser": true, "es6": true, "jest": true }, "rules": { "arrow-parens": ["error", "as-needed", { "requireForBlockBody": true }], "react/jsx-props-no-spreading": "off", "react/jsx-sort-props": ["error", { "reservedFirst": ["key"] }], "react/require-default-props": "off", "react/sort-prop-types": "error", "react/state-in-constructor": ["error", "never"], "semi-spacing": "warn" }, "overrides": [ { "files": [ "sample/**", "test/**" ], "rules": { "import/no-unresolved": "off" } } ] }
ESLint 公式 Web サイト(英語)から ESLint および react プラグイン構成の詳細を学びましょう。
React アプリケーションでのコードリファクタリング
一般的な AppCode リファクタリングに加えて、React アプリケーションでは、React コンポーネントに対して名前変更を実行し、コンポーネントの抽出を使用して新しいコンポーネントを作成することもできます。
コンポーネントの名前を変更する
以下は、1 つのファイルで定義されて使用されるコンポーネントの名前を変更する例です。

同じ方法で、1 つのファイルで定義されたコンポーネントの名前を変更し、名前付きエクスポートを使用して別のファイルにインポートすることもできます。

コンポーネント名の中にキャレットを置き、Shift+F6 を押すか、メインメニューから、コンテキストメニューからを選択します。
React の命名規則(英語)に準拠した新しいコンポーネント名を指定します。
状態値の名前を変更する
状態値の名前を変更すると、AppCode は、対応する setter(React useState フック(英語)でこの状態値を更新する関数)の名前を変更することを提案します。

状態値の名前の中にキャレットを置き、Shift+F6 を押すか、コンテキストメニューからのメインメニューからを選択します。
新しい値の名前を指定して、Enter を押します。フォーカスは setter に移動し、そこで値の新しい名前が提案されます。Enter を押して、提案を受け入れます。
コンポーネントを抽出する
既存のコンポーネントの render メソッドから JSX コードを抽出することにより、新しい React コンポーネントを作成できます。新しいコンポーネントは、関数またはクラスとして定義できます。React 公式 Web サイトの関数とクラスのコンポーネント(英語)を参照してください。

抽出するコードを選択し、コンテキストメニューからを選択します。
または、メインメニューのに移動するか、Ctrl+Alt+Shift+T を押してポップアップからコンポーネントの抽出を選択します。
開いたダイアログで、新しいコンポーネントの名前とそのタイプを指定します。デフォルトでは、機能コンポーネントが作成されます。新しいコンポーネントをクラスとして定義する場合は、クラスを選択します。
OK をクリックします。新しいコンポーネントは、既存のコンポーネントの隣に定義され、そこで使用されます。
オプション : シンボルの移動リファクタリングを使用して、新しいコンポーネントと必要なすべてのインポートを別のファイルに移動します。
オプション : AppCode が新しいコンポーネントに使用するコードテンプレートを変更します。環境設定ダイアログ(Ctrl+Alt+S)で、に移動し、コードタブを開き、必要に応じて Apache Velocity テンプレート言語(英語)を使用してテンプレートを更新します。
関数をクラスコンポーネントに変換する
クラスコンポーネントに変換リファクタリングを使用すると、AppCode は変換する関数の名前を持つ ES6 クラスを生成します。このクラスは React .Component を拡張し、関数本体が移動される render() メソッドを含みます。React オフィシャル Web サイト(英語)の詳細を参照してください。

変換するキャレットを関数内の任意の場所に置き、メインメニューまたはコンテキストメニューからを選択します。
または、Ctrl+Alt+Shift+T を押して、ポップアップからクラスコンポーネントに変換を選択します。
クラスを機能コンポーネントに変換する
関数コンポーネントに変換リファクタリングを使用すると、AppCode は変換するクラスの名前で関数を生成し、render() メソッドの内容を関数本体に移動します。

変換するクラス内の任意の場所にキャレットを置き、メインメニューまたはコンテキストメニューからを選択します。
または、Ctrl+Alt+Shift+T を押して、ポップアップから関数コンポーネントに変換を選択します。
React アプリケーションでの分割代入
構造化を使用すると、配列やオブジェクトの値を変数に簡単に展開できます。この機能には非常に簡潔な構文があり、アプリケーションでデータを渡す必要があるときによく使用されます。
React クラスコンポーネントを使用する場合は、オブジェクト / 配列の分割代入を導入するインテンションアクションの使用を検討してください。JavaScript での構造化の詳細を参照してください。

React アプリケーションを実行してデバッグする
新しい React シングルページアプリケーションの構築を開始するための推奨される方法は、React アプリケーションを作成(英語)します。この場合のみ、開発環境は webpack および Babel を使用するように事前構成されています。それ以外の場合は、最初にビルドパイプラインを構成する必要があります。
Create React App で作成されたアプリケーションの場合、AppCode はデフォルト設定で 2 つの実行 / デバッグ構成を生成します。
デフォルト名 npm start の npm 構成。この構成は、開発サーバーを起動し、アプリケーションを開発モードで起動する
npm startコマンドを実行します。デフォルト名アプリケーションのデバッグの JavaScript デバッグ構成。この設定はデバッグセッションを開始します。
Create React App を使用せずにアプリケーションを作成した場合は、ホスト、ポートなどの実際の設定を使用して npm および JavaScript デバッグ実行 / デバッグ構成を手動で作成する必要があります。
React アプリケーションを実行する
ツールバーのリストから npm start run 構成を選択し、リストの横にある
をクリックします。
または、ターミナル Alt+F12 で
npm startを実行するか、npm ツールウィンドウ()でstartタスクをダブルクリックします。アプリケーションがコンパイルされ、Webpack 開発サーバーの準備ができるまで待ちます。
実行ツールウィンドウまたはターミナルには、アプリケーションが実行されている URL が表示されます。デフォルトでは http://localhost:3000/ です。このリンクをクリックして、アプリケーションを表示します。

React アプリケーションをデバッグする
コードにブレークポイントを設定します。
上記のように開発モードでアプリケーションを起動し、アプリケーションがコンパイルされて開発サーバーの準備ができるまで待ちます。
リストから自動生成されたアプリケーションのデバッグ構成を選択し、リストの横にある
をクリックします。

アプリケーションが実行されている場所に応じて、さまざまな方法でデバッグセッションを開始できます。
アプリケーションが
localhostで実行されている場合は、組み込みのターミナルまたは実行ツールウィンドウからデバッガーを起動することもできます。以下の localhost で実行されているアプリケーションをデバッグするを参照してください。カスタム URL で実行されているアプリケーションをデバッグするには、タイプ JavaScript デバッグの構成を作成し、アプリケーションが実際に実行されている URL アドレスを指定します。以下のカスタム URL で実行されているアプリケーションをデバッグするを参照してください。
この一般的なワークフローは、
localhostで実行されているアプリケーション、および create-react-app で作成されたアプリケーションでも機能します。
localhost で実行されているアプリケーションをデバッグする
コードにブレークポイントを設定します。
上記のように開発モードでアプリケーションを起動し、アプリケーションがコンパイルされて Webpack 開発サーバーの準備ができるまで待ちます。
実行ツールウィンドウまたはターミナルには、アプリケーションが実行されている URL が表示されます。デフォルトでは http://localhost:3000/ です。Ctrl+Shift を押したまま、この URL リンクをクリックします。AppCode は、タイプ JavaScript デバッグの自動生成されたアプリケーションのデバッグ構成でデバッグセッションを開始します。

カスタム URL で実行されているアプリケーションをデバッグする
コードにブレークポイントを設定します。
上記のように開発モードでアプリケーションを起動し、アプリケーションがコンパイルされて Webpack 開発サーバーの準備ができるまで待ちます。
実行ツールウィンドウまたはターミナルには、アプリケーションが実行されている URL が表示されます。この URL アドレスをコピーします。後でデバッグ構成で指定します。アプリケーションを表示するには、リンクをクリックしてください。
JavaScript デバッグ構成を作成します。これを行うには、メインメニューのに移動し、
をクリックして、リストから JavaScript デバッグを選択します。実行 / デバッグ構成: JavaScript デバッグダイアログで、保存した URL を URL フィールドに貼り付け、構成を保存します。
新しく作成した構成を起動するには、構成のリストから構成を選択し、リストの横にある
をクリックします。
最初のブレークポイントに到達したら、デバッグツールウィンドウに切り替えて通常どおり続行します。プログラムをステップ実行し、プログラムの実行を停止して再開し、中断したときにそれを調べ、コールスタックと変数を調べ、ウォッチを設定し、変数を評価し、実際の HTML DOM を表示します。
React アプリケーションを構築する
既存の AppCode プロジェクトに React をインストールした場合は、ビルドプロセスを設定する必要があります。React オフィシャル Web サイト(英語)から React アプリケーションのビルドパイプラインを構成するさまざまな方法について学習します。
React アプリケーションをテストする
React アプリケーション create-react-app で作成で Jest テスト(英語)を実行およびデバッグできます。始める前に、react-scripts パッケージが package.json の依存関係オブジェクトに追加されていることを確認してください。
Jest テストは、エディターから、またはプロジェクトツールウィンドウから、実行 / デバッグ構成を介して実行およびデバッグできます。詳細については、Jest を参照してください。
エディターからテストを実行する
ガターで
または
をクリックし、リストから実行 <テスト名> を選択します。

ガターのテストステータスアイコン
および
により、エディターでテストが成功したか失敗したかを確認することもできます。
Jest 実行 / デバッグ構成を作成する
実行 / デバッグ構成ダイアログ(メインメニューの)を開き、左側のペインで
をクリックして、リストから Jest を選択します。実行 / デバッグ構成: Jest ダイアログが開きます。
使用するノードインタープリターとアプリケーションの作業ディレクトリを指定します。デフォルトでは、作業ディレクトリフィールドにはプロジェクトのルートフォルダーが表示されます。この定義済みの設定を変更するには、目的のフォルダーへのパスを指定します。
Jest パッケージフィールドに、react-scripts パッケージへのパスを指定します。
Jest オプションフィールドに
--env=jsdomと入力します。
テストの実行
メインツールバーのリストから Jest 実行 / デバッグ構成を選択し、リストの右側にある
をクリックします。実行ツールウィンドウのテストランナータブでテストの実行を監視し、テスト結果を分析します。詳細については、テスト結果を調べるを参照してください。
デバッグテスト
メインツールバーのリストから Jest 実行 / デバッグ構成を選択し、リストの右側にある
をクリックします。
開いたデバッグツールウィンドウでは、通常通りに進めます。テストをステップ実行、テスト実行の停止・再開、中断中のテストを調査、コンソールで JavaScript のコードスニペットを実行する、などです。
既知の制限
デバッグセッション中に初めてアプリケーションを開くと、ページのロード時に実行されるコード内のブレークポイントの一部がヒットしないことがあります。その理由は、元のソースコードでブレークポイントを停止するには、AppCode がブラウザーからソースマップを取得する必要があるからです。ただし、ブラウザーは、ページが少なくとも 1 回は完全に読み込まれた後にのみ、これらのソースマップを渡すことができます。この問題を回避するには、ブラウザーでページを再ロードしてください。
関連ページ:
プラグインのインストール
プラグインは AppCode のコア機能を拡張します。例: プラグインをインストールして、次の機能を取得します。バージョン管理システム、課題追跡システム、ビルド管理サーバー、その他のツールとの統合。さまざまな言語とフレームワークのコーディング支援サポート。ショートカットのヒント、ライブプレビュー、ファイルウォッチャーなど。新しいプログラミング言語を学ぶのに役立つコーディング演習。プラグイン設定を開くを押して IDE 設定を開き、を選択します。マーケットプレースタブを使用して、JetBrains...
GitHub でホストされているプロジェクトを管理する
プロジェクトをチェックアウトする (クローン):AppCode から直接貢献したいリポジトリのクローンを作成し、それに基づいて新しいプロジェクトを作成できます。メインメニューからを選択します。Git メニューが使用できない場合は、を選択します。バージョン管理から取得ダイアログで、左側の GitHub を選択します。次のいずれかを実行して、GitHub にログインします。トークンがある場合は、トークンを使用するをクリックし、トークンをトークンフィールドに貼り付けて、ログインをクリックします。それ以外の場...
npm、pnpm、Yarn
AppCode は npm、pnpm、Yarn、Yarn 2、Yarn 3 と統合されているため、組み込みのターミナルで、IDE 内から再利用可能なコードのパッケージをインストール、検索、更新、削除できます。AppCode では、npm、Yarn、pnpm スクリプトを実行およびデバッグすることもできます。AppCode は、package.json ファイルを解析し、スクリプトの定義を認識し、ツリービューにスクリプトを表示し、ツリー内のスクリプトと package.json ファイル内のその定義の間を...
プロジェクトのセキュリティ
潜在的なセキュリティリスクを防ぐために、AppCode では、プロジェクトのソースがわからない場合にプロジェクトを開く方法を決定できます。AppCode は、オープニングプロセス中に実行されるタスクまたは構成について警告し、信頼できるソースを構成できるようにします。不明なソースからプロジェクトを開く:不明なソースから開いた Xcode プロジェクトでは、ビルドスクリプトに悪意のあるコードが含まれている可能性があります。プロジェクトに含まれている Swift パッケージ、およびスタンドアロンの S...
コード補完
このセクションでは、コーディングプロセスのスピードアップを可能にするコンテキスト対応コード補完のさまざまなテクニックについて説明します。基本補完:基本コード補完は、可視性スコープ内のクラス、メソッド、キーワードの名前を補完するのに役立ちます。コード補完を呼び出すと、AppCode はコンテキストを分析し、現在のキャレット位置から到達可能な選択肢を提案します (提案にはライブテンプレートも含まれます)。基本補完を呼び出す名前の入力を開始します。デフォルトでは、AppCode は、入力時にコード補...
ライブテンプレート
ライブテンプレートを使用して、ループ、条件、宣言、print ステートメントなどの一般的な構造をコードに挿入します。コードスニペットを展開するには、対応するテンプレートの省略形を入力してを押します。を押し続けると、テンプレート内の 1 つの変数から次の変数に移動します。を押して、前の変数に移動します。必要な略語がわからない場合は、を押して、現在のコンテキストで使用可能なテンプレートのリストを開きます。ライブテンプレートの種類:次のタイプのライブテンプレートが区別されます。シンプルなテン