ยังไงฉันเครื่องคิดเงิน compressor กับ sprockets บบรรทัดคำสั่ง?

0

คำถาม

ฉันต้องการใช้ Sprockets ที่บรรทัดคำสั่ง(กับรูบี้-sprockets Debian ห่อของ)และฉันต้องการใช้ Terser เหมือจาวาสคริปต์ compressor(เพราะ Uglify ไม่สนับสนุน ES6). เอกสารทั้งหมดที่ฉันเคยเห็นบ่งบอกว่าฉันสามารถสร้างแฟ้มด้วยการต่อรหัส:

require 'sprockets'
require 'terser'

Sprockets.register_compressor 'application/javascript', :terser, Terser::Compressor

ต้องลงทะเบียน Terser กับ Sprockets และจากนั้นผมองหาเบาะแสอยู่ --require FILE ต้องของฉันโทรไป sprockets ที่บรรทัดคำสั่ง. ฉันรู้ว่ามันเป็นการประมวลผลสคริปต์เพราะฉันสามารถเพิ่มเรื่องแบบนี้ต้องแฟ้ม:

Sprockets.js_compressor = :terser
puts Sprockets.js_compressor

และมันรอยนิ้วมือ Terser::Compressor เป็นหนึ่งเดียวอาจจะคาดหวังไว้

ว่ายังไงก็ตามเนี่ย ตอนที่ฉันวิ่ง sprockets กับบางอย่างที่คล้ายกันนี้:

sprockets  --require ./register_compressor.rb  --js-compressor=terser ...

ฉันจะตอบสนอง:

/usr/lib/ruby/vendor_ruby/sprockets/compressing.rb:63:in `js_compressor=': 
unknown compressor: terser (Sprockets::Error)

ฉันแทบเอาหัวโขกกับปัญหานี้สำหรับวิธีมานานเกินไป

debian ruby sprockets terser
2021-11-22 21:39:12
1

คำตอบที่ดีที่สุด

0

โอเคดังนั้นสำหรับคนต่อไปคนที่วิ่งหนีเข้ามาในนี้(เห็นได้ชัดว่าหายากมาก)ปัญหา,คุณต้องการจะปรับปรุ Sprockets::Environment.js_compressor=:

module Sprockets
  class Environment < Base
    def js_compressor=(compressor)
      register_compressor 'application/javascript', :terser, Terser::Compressor
      super
    end
  end
end
2021-11-23 18:54:16

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่