2016-12-09 6 views
2

学校のプロジェクトとして、私はマルチプラットフォームのアプリを作っています。 JavaScriptを使うことにしました。私はVMがIonicのAngular2の部分であり、私は2つのビューを持つことになるIonic2でMVVMパターンのようなものを持つことは素晴らしいと思った。モバイル用(ionicのhtml/cssの部分)、デスクトップ用のElectron私は問題がある。基本的なIonicプロジェクトでは、ViewとAngular部分が密接に結合されています。つまり、同じディレクトリにあり、HTMLを簡単に変更することはできません。Ionic2カスタムビルドプロセスの作成方法は?

私は素晴らしいと思いましたが(他の解決策もありますが)、同じ構造の同じファイル名の "ionic"フォルダと "desktop"フォルダを持つことです。 Ionicでモバイル用のアプリケーションをビルドするときsrc/ionicのcssファイルを通常のイオンプロジェクトのようにコピーしてsrcフォルダのすべてのファイルをdist/folderとhtmlにコピーしたい(唯一の違いは、 src /ではなくdist/folderの下にあるので、src/index.htmlにsrc /の代わりにこれらを含めなければなりません。 デスクトップ用にビルドするときは、すべてのものを同じ方法でコピーするだけですが、src/ionicではなくsrc/desktopからコピーします。

このようにして、ビジネスロジックを「普通の」Angular2にすることができ、デスクトップとモバイルの両方でアプリケーションを作成し直すことができました。

私の質問では、これをやり遂げるために何とかIonicビルドプロセスを変更できますか?自分で作ったガルプやグラントファイルを作成できますか?またはwebpack?どうやってするか?

答えて

0

最後に私は自分のgulpファイルを書いて、src/.tmp /にファイルをコピーしました。そして、コピータスクが準備ができたら、私はionicによって使われたオリジナルのスクリプトを呼び出してプロジェクトをビルドします。私はこの方法ですべてを解決することができました。

on serveタスクgulpでは、src/.tmpを除くsrc /ファイルの変更を監視し、変更されたファイルをsrc/.tmpフォルダにコピーします。何か変わるたびにイオンと再構築されたものが見られます。

イオンが角度の上に作られているので私はラッキーだったので、イオンによって使用されるビルダーツールセットは、普通の角度のプロジェクトと100%互換性があります。

関連する問題