以下のエディターは、mockjs と json-server を使用した共通のフロントエンド データ シミュレーション フレームワークの構築に関するチュートリアルを共有します。これは優れた参考値であり、皆さんのお役に立てれば幸いです。編集者をフォローして見てみましょう
仕事でフロントエンド開発をしている場合でも、余暇にフロントエンド開発を行っている場合でも、バックエンドチームがインターフェースの開発を完了していないことは避けられませんが、フロントエンドチームは対応する関数を実装する必要があります。理由を尋ねる必要はありません。これは間違いなく存在します。この記事はこのような理由から作成されました。この点でニーズがある方の参考になれば幸いです。
1. 使用されるコンポーネントパッケージ
1. クエリ結果をシミュレートするために使用される
2. json-server: シミュレーションサーバーを構築し、CRUD 関連の操作インターフェイスをシミュレートします
2.具体的な実装 1. プロジェクトを確立し、対応する依存関係をインストールします
cnpm install --save-dev mockjs json-server
上記のコマンドは、プロジェクトの結果を示しています:
説明:
データ: このフォルダーには、 Mouckjs によってシミュレートされたクエリ結果を使用するには、dataProvider の後に
lib: ajax リクエストをシミュレートするために使用される jquery ファイルが含まれています。
route: crud 操作をシミュレートするために使用される json-server のルーティング テーブル。方法がわかりません。 複数の db.json を実装します
index.js: サーバー エントリ ファイルをシミュレートします
test.html: テスト cors
2. 基本的な json-server サーバーを構築します
var JsonServer = require('json-server'); var path = require('path') var Server = JsonServer.create(); var defaultMid = JsonServer.defaults({ "noCors": false, "static": path.join(__dirname, "/lib") }); var router = JsonServer.router(path.join(__dirname, '/route/db.json')); Server.use(defaultMid); Server.use(router); Server.listen(8009); console.log('start 8009.....');
内容は公式の json-server に完全に準拠しています。 命令を記述する際には、ミドルウェアとして行われる static と noCors の設定に注意してください。
3.mockjs のアプリケーションを増やす
ここでは、mockjs はデータ生成の基礎としてのみ使用されますが、dataProvider.js は外部アクセス インターフェイスを統合する機能を提供します。つまり、シミュレーションデータは module (MVC のコントローラーに相当) と func (MVC のアクションに相当) に分離されます。 この実装が実現可能かどうかはわかりません(現在プロジェクトでこれを使用しています。)
3.1 まず、dataフォルダーにemp.jsファイルを作成し、次の内容を記述します:
var mockjs = require('mockjs'); module.exports = { list: function(){ var data = mockjs.mock({ 'list|3':[ { 'id|+1':1 } ] }); return data.list; } }
ここにが答えですmockjsの使用
3.2 dataProviderを使用してモジュールコレクションを実装します
var emp = require('./emp'); var moduels = { emp: emp } module.exports = { execute: function(m, f, args){ return moduels[m][f].call(moduels[m], args); } }
3.3 jsonにgetメソッドを追加してデータを取得します
var provider = require('./data/dataProvider'); Server.get('/data',function(req,res){ var moduleName = req.body ? req.body.moduleName : req.query.moduleName; var funName = req.body ? req.body.funName : req.query.funName; var arg = null; res.json(provider.execute(moduleName, funName)); res.end(); });
emp配下のListにアクセスしたい場合のアドレスは、http://localhostです。 :8009/data ?moduleName=emp&funName=list
4. 概要
1. json-server は、取得と送信に複数のデータ エンティティを設定できます。 http プロトコルを入力してデータの CRUD を実装します
これを見ると、データ シミュレーション サーバーを構築するのがとても簡単だと感じますか。もちろん、これは webapi にのみ適用されます。 サンプルコードをダウンロード
上記は私があなたのためにまとめたものです。
関連記事:
実装方法JavaScript を使用したバイナリ ツリー トラバーサル
以上がフロントエンド用のユニバーサル データ シミュレーション フレームワークを構築する方法 (詳細なチュートリアル)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。