Soru Raylardaki zincir dişlileri ne anlama geliyor?


Bu yüzden, sadece Sprockets'in raylarda ne olduğu konusunda hiçbir fikrim olmadığını anladım.

bootstrap kullanırken veya materyalize edildiğinde, sprocket (bootstrap-sprocket veya materialize-sprocket) içinde application.js dosya.

Aradığım her şey varlık boru hattı hakkında konuşuyor ve beni daha fazla karıştırıyor.

Ruby-kılavuzlarına göre,

Varlık boru hattı teknik olarak artık Rails 4'ün temel bir özelliği olmaktan çıkmış, çerçeveden dişliler-raylar gemine çıkartılmıştır.

ve ne zaman yaptım bundle show sprockets-rails, Bende var:

/Users/Sunday/workspace/resilience/vendor/bundle/ruby/2.1.0/gems/sprockets-rails-2.3.1

en azından gemiye sahip olduğumu gösterir.

Ama benim karışıklığım ve sorum şu: sprockets, aksine sprockets-rails Bu diğer mücevherler gibi yaptı bootstrap ve materialize ve muhtemelen başkalarının sahip olması sprocketsözellikle de javascript dosyalarında?

Teşekkürler.


21
2017-08-05 09:40


Menşei


Sprockets, web varlıklarını derlemek ve sunmak için bir Ruby kütüphanesidir. JavaScript ve CSS varlıkları için deklaratif bağımlılık yönetiminin yanı sıra, varlıkları CoffeeScript, Sass, SCSS ve LESS gibi dillerde yazmanıza olanak veren güçlü bir önişlemci boru hattına da sahiptir. - Зелёный


Cevaplar:


Sprockets, web varlıklarını derlemek ve sunmak için bir Ruby kütüphanesidir. Dişli çarklar, bir uygulamanın JavaScript dosyalarını bir dizi dizin ve dosya üzerinde dağıtılabilen daha küçük yönetilebilir parçalara organize etmeyi sağlar. Projelerimizde varlıkların nasıl dahil edileceğine dair yapı ve uygulamalar sağlar.

Her JavaScript dosyasının başında yönergeleri kullanan Sprockets, bir JavaScript dosyasının hangi dosyalara bağlı olduğunu belirleyebilir. Uygulamanızı konuşlandırmaya geldiğinde, Sprockets daha sonra birden fazla JavaScript dosyasını daha iyi performans için tek bir dosyaya dönüştürmek için bu yönergeleri kullanır.


21
2017-08-05 10:19





/app/assets/javascripts/application.js
// This is a manifest file that'll be compiled into including all the files listed below.
// Add new JavaScript/Coffee code in separate files in this directory and they'll automatically
// be included in the compiled file accessible from http://example.com/assets/application.js
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
// the compiled file.
//
//= require jquery
//= require jquery_ujs
//= require_tree .

application.js dosya bir manifesto olarak bilinir ve dahili olarak tarafından yönetilir Sprockets. Bu dosya için bir istek geldiğinde Sprockets manifestoya bakar ve derler Bu dosyada belirtilen her dosya birlikte ve içeriklerini herhangi bir koddan önce içeriklerini içerir. Sprockets arayacak loadpath bu dosya için ve bu durumda jquery-rails motor en vendor/asset/javascripts dizin.


7
2017-08-05 10:11