前提
- bowerがインストール済み
- senchacmdがインストール済み
- sencha sdkがダウンロード済み
新規アプリ作成
$ mkdir ${appname}
$ sencha -sdk {senchatouch_skd_path} generate app ${appname} ./
.bowerrc作成
追加されたコンポーネントがux
フォルダーに入るように.bowerrc
を追加
$ vi .bowerrc
.bowerrc
{
"directory": "ux"
}
bower.jsonの作成
$ bower init
インストール
※ 今回は、sencha-list-scroll-resetを追加するとして話を進めます。
bower install --save sencha-list-scroll-reset
これでux
フォルダー内にインストールコンポーネントが追加されていきます
├── .bowerrc
├── bower.json
└── ux
└── sencha-list-scroll-reset
├── .bower.json
└── bower-dist
└── ux
└── touch
└── ListScrollReset.js
アプリ側で利用する設定
app.js
に読み込んだアプリのpathを設定する
$ vi app/app.js
app.js
Ext.Loader.setConfig ({
enabled: true ,
paths: {
'Ext.ux.touch.ListScrollReset': 'ux/touch/ListScrollReset.js'
}
});
読み込み
コンポーネントを利用するクラスでrequires
指定に追加する
Main.js
'use strict';
Ext.define('SenchaListScrollReset.view.Main', {
extend: 'Ext.Panel',
xtype: 'main',
requires: [
'Ext.Toolbar',
'Ext.ux.touch.ListScrollReset', // ← 追加
'Ext.dataview.List',
'Ext.data.Store'
],
ビルド設定
上記設定のままだとビルドコマンドを実行すると下記エラーがでる
Failed to find file for Ext.ux.touch.ListScrollReset
ビルド用にpathを設定する
$ vi .sencha/app/sencha.cfg
最後に,ux
を追加する
sencha.cfg
app.classpath=${app.dir}/app.js,${app.dir}/app,ux