Я заметил, что везде, где у меня есть определение публикации с использованием $ ne или $ nin, это не имеет никакого эффекта. Например, я определяю публикацию как
Meteor.publish('testing', function() {
return Courses.find({name: {$ne: 'Course A'}})
});
Я убедился, что у меня есть курс с названием "Курс A", однако, когда я подписываюсь, как это на клиенте:
MeteorObservable.subscribe("testing").subscribe(() => {
console.log(Courses.find().fetch())
});
I получить каждый отдельный курс в базе данных (в том числе с именем «Курс А»). В случае, если это имеет значение, мое определение для курсов: export const Courses = new MongoObservable.Collection<Course>('courses');
. Неправильно ли мой селектор, или это ошибка с Метером? Когда я запускаю тот же селектор на стороне клиента, все работает так, как ожидалось.
Да, у меня есть, и все другие мои публикации работы (те, где $ нин и $ пе не используются) –
по «Да, у меня есть» вы имеете в виду у вас все еще есть пакет для автоматической публикации? Удалили ли вы его удалить? Кроме того, если это не сработает, вы можете попробовать изменить свою подписку на: '' ' MeteorObservable.subscribe (" testing "). Subscribe (() => { console.log (Courses.find ({ name: {$ ne: 'Course A'}}). fetch()); }); '' ' – gone43v3r
Извините, у меня нет пакета автоматической публикации. Мой плохой для путаницы. –