Introducing React ReExt – Sencha Ext JS Components in React! LEARN MORE

Sencha Ext JSとUIコンポーネントを使用して美しいWebアプリを作成する方法

January 11, 2023 163 Views

Webアプリケーションをゼロから構築することは、困難かつ時間のかかるプロセスになる恐れがあります。例えば、エンタープライズレベルのアプリを作成するには、いくつかの異なる種類のコンポーネントに対して、複雑なコードを記述しなければなりません。コンポーネントは、インタラクティブなユーザーインターフェイスを作成するためのプログラミング部品と捉えることができます。幸いにも現在、開発者はJavaScriptフレームワークやJavaScript UIコンポーネントライブラリを使用して、Web開発プロセスを高速化することができます。JavaScriptライブラリには、Webアプリ作成に必要となるボタン、テキストフィールド、プログレスバー、デートピッカー、タイムピッカー、ドロップダウンリストなど、いくつかの一般的な機能や UIコンポーネントを提供する、あらかじめ構築済の再利用可能なJavaScript コードが付属しています。これにより、開発者は反復的なコードを何度も記述しなくて済むのです。

このチュートリアルでは、主要なUIコンポーネントライブラリの1つである「Sencha Ext JS」を使用して、機能的なアプリをすばやく作成する方法を紹介します。

Sencha Ext JS とは

A web app created using Sencha Ext JS and UI components (user interface elements)
Sencha Ext JSは、あらゆる最新デバイスに対応した高性能エンタープライズWeb/モバイルアプリを作成するためのフルセットのJavaScriptフレームワークです。ピボットグリッド、リストボックス、ドロップダウンリスト、プログレスバー、HTML5カレンダー、グリッド、ボタン、アイコン、ナビゲーションコンポーネントなど、140を超える汎用的なUIコントロール/コンポーネントが搭載されており、Webアプリケーションの迅速な開発をサポートします。開発者は、さらにSenchaコミュニティによって提供される拡張機能も利用できます。

Ext JS UIライブラリには、効率的なレイアウトマネージャーも含まれており、複数のデバイス、ブラウザ、画面サイズにわたって、コンポーネントとデータの表示を管理/制御できます。さらに、レスポンシブUIにも対応しており、コンポーネントは、横向きや縦向きなどデバイスの画面の向きに効率的に適応可能です。Ext JS ARIAパッケージを使用すれば、Section 508コンプライアンスに必要なすべての適切なツールが提供されるため、アクセシビリティサポートをアプリに追加することもできます。

Sencha Ext JS には、Sencha Architect、Sencha Stencils、Sencha Cmd、Sencha Themer、Sencha Testなど、さまざまなサポートツールも用意されています。

Sencha Ext JSとUIコンポーネントを使用してWeb アプリを作成する

以下に、Ext JSアプリをすばやく作成するための簡単な手順を紹介します。

ステップ1: npmからパッケージをインストールする

Ext JSには、パブリッ npmからインストールできる30日トライアルパッケージが用意されています。次のコマンドを使用して、Ext JSの最新バージョンをインストールします。

$ npm install -g @sencha/ext-gen

アクティブユーザー向けに、Ext JSとすべての関連パッケージが、Senchaのプライベートnpm レジストリでホストされています。以下のコマンドを使用してレジストリにログインし、npm をインストールします。

コードは、こちらから入手することもできます。

これらのコマンドは、Senchaのレジストリから@senchaスコープのパッケージをダウンロードしてインストールするようにnpmを設定します。

ステップ2: アプリケーションの生成

このステップでは、次のコードを使用してホームページとグリッドで構成される、単純な2ビューアプリを生成します。

Creating an app with beautiful UI design using Sencha

コードは、こちらから入手することもできます。

ステップ3: アプリを見てみよう

プロジェクトが生成されたので、プロジェクトディレクトリに移動します。

creating an app using sencha and UI components

コードは、こちらから入手することもできます。

アプリを見るには、次の npm コマンドを実行します。

npm command

コードは、こちらから入手することもできます。

以上の操作で、アプリのエントリポイントでWebブラウザが開きます。

ステップ4: アプリにUI コンポーネントを追加する

このステップでは、コンポーネントをグリッドセルや拡張行に埋め込む方法を示します。ウィジェットカラムを使用すると、任意のコンポーネントをグリッドセルに簡単に埋め込むことができます。ウィジェットカラムを追加するには、カラムの「xtype」に「widgetcolumn」を設定し、そのウィジェット構成(Widget Config)を指定するだけです。ウィジェット構成は、基本的に、各セルに対して作成する「xtype」で構成されるオブジェクトです。

ここでは、ウィジェットカラムを使用してプログレスバーウィジェットをグリッドに追加します。JSコードは以下のとおりです。

Creating a grid using Sencha

コードは、こちらから入手することもできます。

上記のコードにより、次のようなグリッドが生成されます。

Adding UI components in Exj JS app

同じように、ウィジェットカラムを使用してスパークラインウィジェットをグリッドに追加し、下図のようなデータの可視化を実現できます。

Adding UI components into your Sencha Ext JS app

同様に、他の多くのUIコンポーネントをアプリに追加できます。例えば、ユーザーが複数のフルスクリーンページをスワイプ可能にするカルーセルを追加することもできます。これにより、一度に1ページのみが表示されるようになります。カルーセルに他のコンポーネントを追加することもできます。

以下は、アプリに単純な水平のカルーセルを追加するためのJSコードです。

Code for creating a carousel using Sencha and its UI components

コードは、こちらから入手することもできます。

上記のコードは、以下のカルーセルを作成します。

A carousel created using Sencha, one of the best UI libraries

以下は、リストやフォームをカルーセルに配置するコード例です。

Code for placing a list or form into a Carousel element

コードは、こちらから入手することもできます。

Sencha Cmdを使用してSencha Ext JSアプリを作成する

「Sencha Cmd」は、Ext JSアプリを作成するためのコマンドラインツールです。Senchaプロジェクト向けに、コードの最小化、スキャフォールディング、プロダクションビルドの生成など、ライフサイクル管理のための包括的な機能セットを提供します。Sencha Cmdは、Sencha Ext JSアプリの作成に関連する、いくつかのタスクを自動化します。また、コマンドライン構文と Antを統合する包括的な機能セットも提供します。

Sencha Cmdを使用してExt JSアプリを作成する手順を、以下に示します。

ステップ1: Zipファイルの解凍

Ext JSトライアル版のZipファイルをダウンロードしたら、ファイルを解凍してフォルダーを開きます。

ステップ2: Sencha Cmdのインストール

以下の手順で、Sencha Cmdをインストールします。

Windows: .exeファイル (ステップ1で解凍したもの) を右クリックして開きます。

macOS: ステップ1で解凍した .app ファイルを右クリックして開きます。

Linux: .shファイルを右クリックして開きます。

その後、Cmdがインストールされるまで「Next」をクリックしてインストールを進めます。Sencha Cmdのインストールが完了すると、以下の画面が表示されます。

Sench cmd installation

ステップ3: Ext JSアプリでSencha Cmdを使う

コマンド ウィンドウを起動します。次に、アプリを作成するフォルダーに移動します。

Creating an app with Sencha

コードは、こちらから入手することもできます。

以下のコマンドを使用してアプリを作成します。

Code for generating the app

コードは、こちらから入手することもできます。

次に、以下のコマンドにより、新しいアプリのフォルダーに移動します。

Code for navigating to the new app folder

コードは、こちらから入手することもできます。

最後に、アプリケーションを実行します。

running the application created using Sencha UI component library

コードは、こちらから入手することもできます。

Sencha Cmdはアプリを作成します。完了すると、コマンドウィンドウに次のメッセージが表示されます。

Waiting for changes...

以上で、 ブラウザから http://localhost:1841/ にアクセスしてアプリを実行できます。

新しいSencha Ext JSアプリケーションの作成は完了です。

ステップ4: UI コンポーネントをアプリに追加する

前のセクションのステップ4の手順に従って、UIコンポーネントをさらに追加し、アプリをよりユーザーフレンドリーに改良することができます。例えば、カルーセルやグリッドなどをアプリに追加することが可能です。

Ext JSアプリにチャートを追加したい

Sencha は、データを可視化するチャートパッケージも提供しています。ただし、デフォルトでは、Sencha ChartはExt JSライブラリに含まれていません。チャートを利用可能にするには、(Sencha Cmdで生成された)アプリ の {appRoot}/app.jsonファイル内の「requires」ブロックに「charts」を追加し、chartsパッケージを含めるだけです。これにより、アプリ内でチャート機能を利用できるようになります。

以下は、簡単な棒グラフを作成するコード例です。

Example code for creating a bar chart with Sencha and UI components

コードは、こちらから入手することもできます。

まとめ

魅力的で優れたユーザーインターフェイスは、モダンなWebアプリやWeb サイトを構成する重要な要件の 1つです。そのため、今日のWebデザイナーは、Webサイトに、いかにUI要素と画像を追加するかといった点にフォーカスしています。JavaScript UIコンポーネントライブラリには、メッセージボックス、入力フィールド、検索フィールド、ボタン、デートピッカーなど、いくつかのビルド済みのUIコンポーネントが用意されており、UIデザイナーやWebデザイナー、開発者は、一貫した形式のユーザーインターフェイスを作成し、Webデザインを改善することができます。このチュートリアルでは、主要なJavaScriptライブラリの1つ「Ext JS」を使用して、シンプルなアプリの作成を体験することができました。

ぜひ、Sencha Ext JSを使って、機能的なWebアプリの構築を効率化してみましょう。

Recommended Articles

Virtual JS Days 2024のハイライト

2024年2月20日~22日、第3回目となる「Virtual JavaScript Days」が開催されました。JavaScript の幅広いトピックを採り上げた数多くのセッションを実施。その内容は、Senchaの最新製品、ReExt、Rapid Ext JSまで多岐にわたり、JavaScriptの最新のサンプルも含まれます。 このカンファレンスでは多くのトピックをカバーしています。Senchaでセールスエンジニアを務めるMarc Gusmano氏は、注目すべきセッションを主催しました。Marc は Sencha の最新製品「ReExt」について、詳細なプレゼンテーションを実施。その機能とメリットを、参加者に理解してもらうべく詳細に説明しました。 カンファレンスは、Senchaのジェネラルマネージャを務めるStephen Strake氏によるキーノートでスタートしました。キーノートでは、会社の将来のビジョンについての洞察を共有しています。世界中から JavaScript 開発者、エンジニア、愛好家が集まるとてもエキサイティングなイベントとなりました。これは、JavaScript エコシステムの最新情報について学ぶユニークな機会と言えます。

Ext JS 7.7リリース

このたび、Senchaチームは、Sencha Ext JS 7.7のリリースを発表しました。このリリースでは、7.6リリースに続き、Grid、Modern Sliderfieldなどユーザーの皆さんからの要望の多かった機能の強化に加え、双方のツールキットで、Grid、Chart、TreePanel、Timefield、ComboBox、Storeなどにフォーカスして品質改善を行っています。

Sencha 2023/2024 ロードマップアップデート

このブログ記事では、近い将来に計画しているSencha製品のリリースについての詳細を説明します。 Sencha チームでは、日々お客様と対話を続けており、皆さんのフィードバックが、製品全体の方向性の決定に大きな役割を果たしています。 ロードマップアップデートの詳細を説明する前に、Senchaの新しいサービスを含め、ここ数ヶ月で提供した内容についてまとめておきたいと思います。

JavaScript開発者必見のオンラインイベント「SenchaCon 2023」

常に最新のテクノロジー、ツール、トレンドを把握することの重要性を理解しているJavaScript開発者。そんなエンジニアを対象とした、オンラインイベント「SenchaCon 2023」が開催されます。 このカンファレンスでは、あらゆるレベルのJavaScript開発者が集い、スキルアップやナレッジを共有できる環境を提供します。SenchaCon 2023には、注目のスピーカーが登壇し、興味深いコンテンツをお届けします。まさに、必見のイベントです。 SenchaCon 2023は、米国中部標準の2023年4月12日9時(日本時間4月12日23時)に開催されます。

Sencha GRUIの新しいブランド・アイデンティティ「BestReactGrid」

Senchaでは、「Sencha GRUI」を「BestReactGrid」にリブランドし、Reactコミュニティに向け、React開発者のユーザーエクスペリエンスの向上を実現するスタンドアロンエンティティとして提供することを発表しました。この比類ない機能と特長により、BestReactGridは、世界中のReact開発者にとって絶好の選択肢となるものと期待されます。

Rapid Ext JS ベータ版を公開

今回、Rapid Ext JSベータ版をリリースしたことを発表します。このベータ版によって、新たに提供されるハイパフォーマンスツールを早期にお試しいただくことができます。すでに Sencha Ext JSを利用されている方は、新たにラインナップに加わるSencha Rapid Ext JSの登場を歓迎されていることと思います。Rapid Ext JSは、強力なローコード エディターであり、Ext JSによる開発をスピードアップすることが可能です。 この記事では、Rapid Ext JS のハイライトを紹介します。

View More