Определение схемы с помощью Mongoose на стороне клиента

Я хотел бы объявить схемы объектов (которые могут создавать переменные со значениями по умолчанию, с правилами проверки и т.д.), как это может быть сделано в мангусте, но на стороне клиента.

Не найдено ни одной библиотеки, предлагающей ее. Что-то я пропустил?

Ответы

Ответ 1

посетите https://github.com/spumko/joi, и я думаю, вы найдете много радости [i].

Система проверки joi используется для проверки объектов JavaScript на основе богатой описательной схемы. Валидация схемы - это процесс обеспечения соответствия объектов заранее определенным ожиданиям.

В основном я использую его с nodejs, но я думаю, вам будет приятно также использовать на стороне клиента http://browserify.org/.

Ответ 2

Чтобы решить эту проблему, я создал https://github.com/archangel-irk/storage

Подтверждение схемы, похожее на Mongoose, коллекции и документы в браузере.

Ответ 3

edit: Эта библиотека может быть тем, что вы ищете: https://github.com/molnarg/js-schema

То, что вы описываете, - это то, что classes делает в таких языках, как java, С++, objective-c и т.д. К сожалению, javascript действительно не предлагает эту функцию. Самое близкое, что вы можете сделать, это реализовать Prototypes:

Как работает JavaScript.prototype?

edit: при второй мысли, Prototypes вы сможете достичь всего, что вы просили

Ответ 4

Формы angular: http://www.forms-angular.org/

Вы можете описать схему на уровне клиента (часть схем или вложенных схем/массивов поддокументов...), и формы с валидаторами будут автоматически сгенерированы.

Кроме того, вы можете просто определить схемы мангуста на уровне бэкэнд, и вы получите отличную систему интерфейса/бэкэнд для создания/загрузки/редактирования/удаления элементов в mongo db.