2013-03-01 19 views
15

Bu sorunun çok geldiğini gördüm;Meteor Görüntüleri, CSS, "Normal" Web Sunumu

  • Meteor web siteme nasıl resim eklerim?
  • Meteor ile "standart" web içeriğini nasıl barındırırım?
  • <img src="img/myimage.png"> etiketini eklemeyi denedim ancak resim gösterilmiyor!
  • Meteor sitesinde bazı dosyaları nasıl barındırabilirim?

cevap

44

İçeriği, proje kökünüzdeki "public" adlı bir klasöre koyun.

  • URL'leriniz arasında/public içermeniz gerekmez.
  • Genel olarak herhangi bir ek klasör yapısı desteklenir. Diğer yanıtlar sağlandığından, NodeJS yönlendirme eklentileri gerekli değildir.
  • Harici kütüphanenin javascript dosyalarını/lib dosyasına yerleştirin. Otomatik olarak dahil edilecektir.

Açıklama

Meteor olarak, projenizin kök bir "kamu" dizin oluşturarak "standart" web içeriğini barındırabilir. Bu klasöre yerleştirdiğiniz tüm görüntüler, dosyalar veya veriler, sunucunun kökündeymiş gibi, NodeJS sunucusu tarafından normal olarak sunulacaktır.

  • Sorumlu resim URL'si /public/test/img.png: proje içinde


    Örnek

    • Yapısı /test/img.png
    • Örnek HTML etiketi: <img src="/test/img.png"/>
  • +1

    sadece eklemek istedim, **/** başlangıçta önemlidir. – nooitaf

    +1

    Bu belge için bulabildiğim şeyden Meteor'da, klasördeki bir dosya her değiştiğinde sayfanın yenilenmesini istemiyorsanız, klasörün veya dosyanın sonuna "~" ekleyin. Bunu yaparsam, yukarıdaki örnekler çalışmayı durdurur! – Dave

    +0

    @Dave Bir şeyin sonuna ~ eklendiğinde, Meteor'ın göz ardı ettiği geçici bir dosya olduğunu belirtir.Bu linux standart adlandırma kuralıdır. Lütfen kasıtlı olarak proje dosyalarınızın sonuna ~ işareti eklemeyin. –

    0

    Proje dizininin içinde yeni bir klasör oluşturun public. Ortak klasörün içine yeni bir klasör img (veya seçtiğiniz başka bir ad) ekleyin. Eklemek istediğiniz tüm görüntüleri HTML'nize bu klasöre kopyalayın.

    Şimdi hoşuna kullanabilirsiniz - <img src="img/myimage.png">

    URL'de yer/halkı dahil etmek gerekmez.

    +4

    Mevcut cevabı gördünüz mü yoksa aynı şeyi göndermeye karar verdiniz mi? –