2

次のような json-schema を介して異なるリソースを記述する API があるとします: https://github.com/salesking/sk_api_schema/blob/master/json/v1.0/address.json

json-schema をモデルとして使用できる (またはモデルに変換できる) フロントエンド JavaScript フレームワークはありますか? json スキーマに対してモデルを検証できる必要があり、異なる json-schema モデル間の参照を処理できる必要があります。

私は ember.js を少し調べてきましたが、json スキーマを ember モデルに変換するコードを書いたとしても、ember.js モデルで検証が機能するのはまだ難しいようです。正しい?

4

2 に答える 2

2

JXT ( http://www.jxtdev.com ) モデルは JSON で初期化され、さらに JSON は JavaScript パッケージの構成に使用されます。JXT は MVC パターンを実装し、モデルに含まれるデータが変更されると、ビューを自動的にリロードするコントローラーに通知します。このイベント駆動型のアプローチは、JXT コレクション (ネイティブ JavaScript コレクションのラッパー) から始めて、フレームワークのあらゆる場所で使用されます。私は最初のベータ版をリリースしたばかりです (はい、私はその背後にある開発者です)、まだ未熟だと思うかもしれませんが、一見の価値があります ;)

于 2012-12-10T10:37:32.043 に答える
2

JSON スキーマについてあまり知らなくても、Knockout はこれをかなり簡単にサポートできると思います。

KO モデルは任意の Javascript オブジェクトである可能性があるため、スキーマを読み取り、各「プロパティ」プロパティのプロパティからオブジェクトを生成するだけで済みます (笑)

Knockout Validation プラグインを使用して動的に検証を追加することもできます: https://github.com/ericmbarnard/Knockout-Validation

結合例:

var schema = // read in json
var model = {}

for (prop in schema.properties) {
    model[prop] = ko.observable().extend({ 
                      maxLength: /* get your value from schema, etc */,
                      minLength: /* get your value from schema, etc */
                  }
}
于 2012-10-16T01:39:01.660 に答える