2016-04-05 11 views
0

Koleksiyonumda /imports'u tanımladığıma göre, paketlerimı onlara nasıl erişebilirim? api.addFiles ile bağımlılık bildirilmesi Error: Cannot find module '/imports/collections'Meteor uygulama dosyalarım paketlerima nasıl aktarılır?

  • yılında

    • Running import collections from '/imports/collections' veya require('/imports/collections') sonuç paketin dışına dosyalar için izin verilmez.

  • cevap

    0

    Paketler derleme zamanında tanımlanır, uygulama koleksiyonu çalışma zamanında tanımlanır. Çalışma zamanı verilerine derleme zamanında erişemezsiniz.

    Koleksiyonunuz için koleksiyon listesi içeren bir kurucuyu aramanız gerekiyor.

    // packages/myFixturesPackage/startup.js 
    
    import collections from '/imports/collections/index.js'; 
    
    Meteor.startup(
    
    Package['myFixturesPackage'].collections = require('/imports/collections/index.js'); 
    
    fixtures.populate(Package['myFixturesPackage'].collections);); 
    

    index.js (paket süresi çalıştırılan) ana uygulama tanımlanan tüm colllections içeren bir koleksiyon dizi verin ve daha sonra eşyalar Nesneyi ortaya modülüne geçirilmektedir.

    +0

    import, başlatma işlevinin içinde çalışmalıdır. Bu çalışma zamanı 'da çalışacağından emin olmanın tek yolu bu yüzden ithalatı yerine kullandığımın cevabını yazarken bana aynı hatayı verecek. Lütfen cevabınızı kabul edebilmemiz için lütfen bunu düzeltin :) – zVictor

    +0

    Bitti, ancak .... Meteor okuduğumda, eğer şartlı ithalat yapmıyorsanız, o zaman ithalatla ilgili her şeyi yapabilmeniz gerekir. Bu kodu paketten mi ekliyorsunuz? ya da uygulamada mı? Bu kod türü paketin içinde değil, uygulamada olmalıdır. – Mascarpone