Определение схемы с помощью 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.