Я использую Meteor с collection2, и у меня есть массив, который выглядит следующим образом:
productTypes = ["string1", "string2", "string3", {Other: "test"}]
По сути, в массиве будет от 0 до 7 строк, а Other: Test может присутствовать или отсутствовать.
Итак, я пытаюсь создать схему, которая обрабатывает этот случай. Есть ли способ сказать ему, что в массиве будут строки и объект?
я пробовал
const residentSchema = new SimpleSchema({
productTypes: {type: [String, Object], optional: true, blackbox: true},
})
Но это явно не сработает, потому что ожидается одна строка и один объект. Кто-нибудь знает, как я могу заставить эту работу? заранее спасибо
Изменить:
Сейчас я храню его в таком формате:
productTypes = {список: ["строка1", "строка2", "строка3"], Другое: "тест"}
но когда я добавляю такую схему:
const productTypeSchema = new SimpleSchema({
list: {type: Array},
other: {type: String}
})
const residentSchema = new SimpleSchema({
productTypes: {type: productTypeSchema},
})
Мое приложение вылетает. Когда я удаляю список строк: {type: Array}, все в порядке.
Допускается ли теперь Array как значение SimpleSchema?