Cree una publicación reactiva con campos adicionales en cada documento
Quiero hacer una publicación con varios campos adicionales, pero tampoco quiero usarCollection.aggregate
y pierdo las actualizaciones de mi publicación cuando cambia la colección (así que no puedo usarself.added
en ella tampoco).
Planeo usarCursor.observeChanges
para lograr eso. Tengo dos limitaciones principales:
item
donde guardo una gran variedad deitem
_carné de identidad. No quiero publicarlo, pero quiero publicar unitem_count
campo con la longitud de mi matriz de campoAquí viene el enfoque:
Planeo encadenar las consultas de búsqueda. Nunca hice eso, así que me pregunto si es posible. La estructura de consulta general (simplificada) sería así:http://jsfiddle.net/Billybobbonnet/1cgrqouj/ (No puedo obtener el código que se muestra correctamente aquí)
Residencia enEl ejemplo de conteo en la documentación de Meteor, Almaceno mi consulta en una variablehandle
para detener la notificación de cambios si un cliente cancela la suscripción:
self.onStop(function () {
handle.stop();
});
Agrego una banderainitializing = true;
antes de mi consulta y lo configuré entrue
justo antes de llamarself.ready();
. Yo uso esta bandera para cambiar miitemCount
variable solo si se inicializa la publicación. Básicamente, cambio miswitch
como eso:switch (field) {
case "item"
if (!initializing)
itemCount = raw_document.item.length;
break;
default:
}
Quería comprobar que este enfoque es bueno y posible antes de comprometerme en grandes cambios en mi código. ¿Alguien puede confirmarme si este es el camino correcto?