Пн goose не распознает тип номера - PullRequest
0 голосов
/ 19 марта 2020

Я играю с документацией mon goose: https://mongoosejs.com/docs/schematypes.html По какой-то неизвестной мне причине код ниже не запускается, выдает ошибку:

TypeError: Invalid value for schema path `integerOnly.type`, got value "undefined"

Если я поменяю тип на String, вроде бы, он работает:

var numberSchema = new Schema({
  integerOnly: {
    type: String,
    get: v => Math.round(v),
    set: v => Math.round(v),
    alias: "i"
  }
});

Кто-нибудь может указать, что происходит? Я нашел документацию mon goose устаревшей, похоже, они не обновляют документацию.

Исходный код, как на странице mon goose, приведен ниже.

//--------------------------------------------------

require("./connection");

var mongoose = require("mongoose");
var Schema = mongoose.Schema;

//---------------------------------------------------

var numberSchema = new Schema({
  integerOnly: {
    type: Number,
    get: v => Math.round(v),
    set: v => Math.round(v),
    alias: "i"
  }
});

var Number = mongoose.model("Number", numberSchema);

Деталь. если я закомментирую строку var Number = mongoose.model("Number", numberSchema);, она не выдаст ошибку, но я не смогу работать без определения модели!

1 Ответ

0 голосов
/ 20 марта 2020

После хорошего ночного сна, моего прекрасного сна, я обнаружил проблему:

var numberSchema = new Schema({
  integerOnly: {
    type: Number,
    get: v => Math.round(v),
    set: v => Math.round(v),
    alias: "i"
  }
});

var NumberType = mongoose.model("Number", numberSchema);

var doc = new NumberType();

Проблема была: Я определял тип , а именно Number, что уже существует в пн goose.

Меня удивляет, почему у mon goose в их уроке есть образец с такой примитивной ошибкой: я скрывал тип Number, это ошибка из учебника.

Это заставляет меня думать, что я что-то упустил, так как я пытаюсь освоить новые приемы в понедельник goose, и я не смог запустить пример так, как они его предоставили.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...