GrapeCity.devlog

グレープシティ株式会社のDeveloper Tools〈開発支援ツール〉の最新情報をお届けします。製品のTIPSや発売情報、イベントのお知らせなどをいち早く発信中です。

Wijmoクイックスタート with npm!

3月28日、弊社はJavaScriptライブラリ「Wijmo」の最新バージョン「2018J v1」をリリースしました。今回はこの「2018 v1」で追加された機能の中から、JavaScript開発者には馴染みが深いと思われる「npm対応」をピックアップし、ご紹介したいと思います。


Npm-logo


ご存知ない方のため、はじめに簡単なご説明をすると「npm」はNode.jsのパッケージ管理ツールです。

通常、フロントエンド開発でJavaScriptライブラリを使用する場合、配布元からライブラリを取得し開発環境に配置する必要がありますが、Node.jsを使った開発でnpmを利用するとそのような手間がなくなり、CLI(コマンドラインインターフェイス)からのコマンド実行ひとつで、ライブラリのダウンロードと配置ができるようになります。

Wijmoは「2017J v3」までnpmに未対応だったため、Node.jsを使ったプロジェクト構築においてWijmoを使用する場合は、製品モジュールを開発環境に手動配置する作業が必要でした。新しくnpm対応を行なったWijmo「2018J v1」を使用すると、この作業をどのくらい簡略化できるでしょうか?

Wijmoの「2018 v1」とnpmを利用し、以前に当ブログでご紹介した「Wijmoクイックスタート」を再度、実践してみたいと思います。

Wijmoクイックスタート with npm!

プロジェクトの作成

コマンドプロンプト/ターミナルでプロジェクトのフォルダを作成して、フォルダに移動します。

mkdir sample
cd sample

npm initコマンドを実行して、package.jsonファイルを作成します。途中、プロジェクトの設定についていくつか質問されますが、Enterを押してすべて既定値を選択して構いません。

npm init 

webpackとwebpack-cliをインストールします。また、cssファイルをwebpackでバンドルできるようにするために、style-loaderとcss-loaderもインストールします。なお、以前ご紹介した「Wijmoクイックスタート」でwebpack-cliのインストールは必要ありませんでしたが、2018/2にリリースされたwebpack 4の利用では、新たにwebpack-cliのインストールも必要となります。

npm install --save-dev webpack webpack-cli style-loader css-loader

webpackの設定ファイル(webpack.config.js)を作成して、下記のコードを追加します。

module.exports = {
  module: {
    rules: [
      {
        test: /\.css$/,
        use: [ 'style-loader', 'css-loader' ]
      },
    ]
  }
};

package.jsonファイルのscriptに、webpackのバンドル処理とindex.htmlのコピー処理を追加します。コマンドプロンプト(Windows)とターミナル(Mac)では、ファイルコピーに利用できるコマンドが異なるので、環境に応じ以下のように書き分けます。

Windows コマンドプロンプトで実行する場合
"scripts": {
  "build": "webpack && copy index.html dist\\index.html"
},
macOS ターミナルで実行する場合
"scripts": {
  "build": "webpack && cp index.html dist/index.html"
},

index.htmlファイルとsrc/index.jsファイルを作成します。

ここまではnpmとwebpackによる一般的なJSアプリの作成手順で「Wijmoクイックスタート」の内容と同様です。ここからnpmによるWijmoのインストールとその後の利用手順を解説します。

Wijmoのインストールと利用

npmでWijmoをインストールします。

npm install --save wijmo

index.htmlファイルに、Wijmoコントロールを表示するためのdiv要素と、webpackバンドルファイルの参照を追加します。

<head>
<meta charset="utf-8">
<title>
Wijmo with npmサンプル
</title>
</head>
<body>
  <div id="inputDate"></div>
  <script src="main.js"></script>
</body>

index.jsファイルに下記のコードを追加します。

import 'wijmo/styles/wijmo.css';
import 'wijmo/cultures/wijmo.culture.ja';
import * as wijmoInput from 'wijmo/wijmo.input';

var inputDate = new wijmoInput.InputDate('#inputDate');

下記のコマンドを実行してwebpackのバンドル処理を実行すると、distフォルダにファイルが生成されます。

npm run build

dist/index.htmlファイルを開くと、Wijmoコントロールを表示できることと、index.htmlとmain.jsの2つのファイルだけ読み込まれていることが確認できます。

使いやすくなったWijmo

今回のプロジェクト作成では、以前にはあった以下のような作業・設定が不要になっています。

  • 手動によるWijmoの本体モジュール配置
  • 手動によるWijmoのスタイルファイル、カルチャーファイルの配置
  • script-loaderの利用設定

npm対応によって手動によるモジュールやファイル配置の必要がなくなり、またプロジェクトを作成する際に必要な設定の量も少なくなりました。

Wijmoがnpmに対応したことにより、Node.jsを使った開発において開発環境がスムーズに構築できるようになったことがお分かりいただけたかと思います。

Wijmoの「2018 v1」にはこのnpm対応以外にも様々な新機能追加・機能強化が行われており、その内容はこちらのページで確認することができます。またページ内でも実際に動作を確認できるデモも公開されていますので、ぜひお試しください。

Copyright © GrapeCity, Inc. All Rights Reserved.