2013-10-02 71 views
14

我想申報對象的模式(即可以實例變量的默認值,其驗證規則等),喜歡的話可以在貓鼬進行,但在客戶端。客戶端貓鼬類架構定義

沒有發現任何庫提供的。有什麼我錯過了嗎?

+0

只要使用貓鼬客戶端http://mongoosejs.com/docs/unstable/docs/browser.html –

回答

0

編輯:這個庫可能是你在找什麼:https://github.com/molnarg/js-schema

你所描述本質上是什麼classes在語言如Java做的,C++,Objective-C的,等等。不幸的JavaScript並沒有真正提供這種功能。你可以做的最接近的事正在實施Prototypes

How does JavaScript .prototype work?

編輯:第二個想法,與Prototypes你應該能夠達到你要的

+0

他不是在找一個類的實現,但對於(貓鼬類),用於客戶端的JS對象建模。 – robertklep

+0

原型不允許你做對象建模嗎?如果不是,你能解釋爲什麼那樣嗎? – winkerVSbecks

+0

他特別提到[Mongoose](http://mongoosejs.com/docs/guide.html)的原因是它提供了使用模式進行對象建模,包括輸入,驗證,默認等。你可以明顯地實現所有這些,但這並不是要問的問題。 – robertklep

4

訪問https://github.com/spumko/joi一切,我想你會發現很多歡樂[我]。

的淳佳驗證系統用於基於一個豐富的描述性架構驗證JavaScript對象。模式驗證是確保對象符合預定義期望的過程。

我主要是與使用的NodeJS,但我認爲你會發現它也很好的在客戶端與http://browserify.org/使用。

0

表單的角度:http://www.forms-angular.org/

可以在客戶端側水平,然後用驗證器形式(模式或嵌套模式/子文檔的陣列...的一部分)描述模式是自動生成的。

此外,你可以只是在後端級別定義貓鼬模式,你最終將有一個偉大的前端/後端系統在mongo數據庫中創建/加載/編輯/刪除項目。