今、様々なモバイルエンド端末装置上昇、PC側を超えた、異なるデバイスは必然的に非常に、このようなゲームを作って、あなたがなどのAndroidバージョン、IOSのバージョン、いくつかの異なるバージョンを開発する必要があり、より多くの困難な開発、統一されていない言語の開発につながります人的・物的資源の無駄。
時代の大きなフロントがされて入ってきた、これらの問題を解決するために、正確に表示されます。
ES6の建築プロジェクトについて
- プロジェクトのビルドステップ
- 新しいプロジェクトフォルダ(3つのブロック)
- アプリ:フロントエンドコード(JS、CSS、HTMLテンプレート)
- JS
- CSS
- 景色
- サーバー:サーバーコード(サーバー)
一个完整的项目必须要服务器提供接口和真实数据
express-generator脚手架
express -e .
- タスク:補助コード(コンパイラフロントエンドのコードと自動化)
- UTIL:共通ゴクゴク自動スクリプトを置きます
args.js
(独自のスクリプトコマンドライン引数を書きます)
- UTIL:共通ゴクゴク自動スクリプトを置きます
- アプリ:フロントエンドコード(JS、CSS、HTMLテンプレート)
- 必要な構成ファイルを作成します。
- package.json(NPM -yインストール)
.babelrc
(サポートES6文法)gulpfile.babel.js
(構文は、プロジェクトES6で使用されるため、そのゴクゴクスタートアップファイル拡張子を追加する必要があります.babel
)
- 取り扱いコマンドラインパラメータ(
args.js
カスタムパラメータスクリプト)
- 新しいプロジェクトフォルダ(3つのブロック)
人気のフレームワーク
- ライブラリやフレームワーク
- 図書館:主に自分のコードに基づいて、小さいながらもなし特定の規範、
- フレーム:大、主にこの枠組みの中で、独自のコードを記述する人々のためのスケルトンコード、によって確立された規制の枠組みを遵守する必要があります
- MVC
- アイデアは、それは単にコードの構造を作るための方法です
- 最も重要な点は、結合の度合いを軽減することです
- コードを書くと保守が容易
- 開発チームを容易にするために、
- 全体的なコードの複雑さを簡素化、組織符号分割モジュール
- アジャイル思考:構成された契約よりも大きい、メンバーはすぐに開発することができるであろうチーム限り、お互いによく一致
- ビュー
- データ駆動型のフレームワーク:
- データドライバのビューは、限り、データは自動的に変更ビューを更新されると、操作はDOMを必要としません。
- データ駆動型のフレームワーク:
- タスクの自動化
- イサキ:カスケード操作、ファイル操作に所属した後、よりゆっくりと
- 一息:高速ファイルストリーム操作(ストリーム)、
- コンパイルツール
- バベル:コンパイルES6
- WebPACKの:モジュラープロジェクトの依存関係
jQueryの
- パッケージのエントリー機能
- jqueryの入力機能は、代わりDOMContentLoadedを使用する、使用しなくてもよいです
モジュラーロード
CommonJSの仕様
核となるアイデア
- これは、モジュールができます
require
他のモジュールへの同期に依存する方法をロードし、次にによってすべきexports
か、module.exports
言い訳を露出するように誘導されたニーズ1
2
3
4必要(「モジュール」)。
必要("../file.js");
exports.doStuff = 関数() {}。
モジュールの.exports = someValueの。
- これは、モジュールができます
実現
- Node.jsのサーバー
- Browserify < ビッグコラム 大型フロントエンドのプレゼンテーションツール / UL>
AMDの
Asynchronous Module Definition
仕様核となるアイデア
- 1つのプライマリインターフェイス
define(id?, dependencies?, factory)
は、モジュールはすべての依存関係の依存関係、およびまた、工場に渡されるパラメータとして、依存するモジュールを事前に行うとき、声明の中で事前に依存を指定することです1
2
3
4(定義"モジュール"、[ "DEP1" 、"DEP2" ]、関数(D1、D2) { 戻り someExportedValueを; }); 必要([ "モジュール"、 "../file" ]、機能(モジュール、ファイル) {});
- 1つのプライマリインターフェイス
実現
- requireJS
CMDの
Common Module Definition
仕様そして、AMDは非常に似ている、それをシンプルに保つようにしてみてください、とモジュールCommonJSのNode.jsと仕様との互換性の多くを維持するために、
1
2
3
4
5
6(定義関数(必要、輸出、モジュール) { VAR $を= 必要とする('jQueryの'); VARのスピニング= 必要とする('./spinning'); exports.doSomething = ... モジュールの.exports = ... })
実現
- Sea.js
- 背景のNode.js
- 依存性が必要と輸出
- browserify
- モジュールローダーが、あなたは唯一のJSを読み込むことができます
- WebPACKの
- モジュールローダ、すべてのものは、CSSを含むモジュール、写真、VUEファイル、jsファイルなどです
- モジュールは、個別に書かれ、最後に一緒にパッケージされています
WebPACKの
- WebPACKの正しく設定
process.env.NODE_ENV
1
2
3
4
5新しい webpack.DefinePlugin({ 'process.env' { 'NODE_ENV' :JSON .stringify('生産') } })
あなたは、次のコマンドを呼び出すとき: WebPACKのパッケージ(Linux環境)を使用する方法を本番環境を示し、
NODE_ENV=production webpack --progress --colors