albatrosary's blog

UI/UXとエンタープライズシステム

yeomanもgulpもgruntもさようなら(?

Angular2を触り始めているが、YEOMANジェネレータがあまりないので自分で作っています。今Angular2を始めている人達の多くがangular2-seed:

github.com

を利用していると思いますが(実際はよくわかりません)、Angular2にはangular-cliというのがあり、これを使うとディレクトリ構造とか開発環境とか多分ベストプラクティスが整う。angular-cliember-cliを元に書かれています。

github.com

angular-cliの使い方はgithubを見れば良いのですがemberに慣れていない人は若干戸惑うところもありますので備忘録的に記載します。

インストール

npmを使ってインストールします。グローバルインストールするのですが、プロジェクトを作成したときもローカルにangular-cliがインストールされ以降はローカルを使うようです(グローバルを使うように設定もできるようです)。:

npm install angular-cli -g

このあとwatchmanというのもインストールしておきます。watchmanが無いとng serve等実行時に警告を出します。

brew install watchman

http://ember-cli.com/user-guide/#watchman

プロジェクトの作成

プロジェクトを作成する場合は、まずngコマンドを発行します。

ng new [PROJECT_NAME]
cd [PROJECT_NAME]
ng serve

雛形生成

必要な雛形はYEOMANっぽく次のコマンドで作成します:

Scaffold Usage
Component ng g component my-new-component
Directive ng g directive my-new-directive
Pipe ng g pipe my-new-pipe
Service ng g service my-new-service

外部ファイル

npmでインストールしたファイルをindex.htmlに定義する場合は、通常通り npm install --saveでインストールを行いember-cli-build.jsにある

    vendorNpmFiles: [
    ]

にファイルを追記します。例えば

npm install material-design-lite --save

とした場合には

    vendorNpmFiles: [
      'material-design-lite/material.min.js',
      'material-design-lite/material.min.css'
    ]

と記載する必要があります。index.htmlで記載するパスはnode_modulesから始めるのでなくvendorから記載します。つまり

  <link rel="stylesheet" href="vendor/material-design-lite/material.min.css">
・・・
  <script src="vendor/material-design-lite/material.min.js"></script>

と記載します。

最後に

angular-cliを使いはじめるためのちょっとしたメモを記載しました。Angular2 Lifeが楽しめるように利用すると良いのかなと思います。ちなみにangular-cliはangular2 materialでも利用されています。

github.com