กล่าวว่าสำหรับตัวอย่างเช่นคุณกำลังสร้างโครงการ Backbone หรืออะไรก็ตามและคุณจำเป็นต้องโหลดสคริปต์ในลำดับที่แน่นอนเช่นจะต้องมีการโหลดก่อนunderscore.js
backbone.js
ฉันจะทำให้มันเป็นบทสรุปได้อย่างไรเพื่อที่พวกเขาจะได้อยู่ในระเบียบ?
// JS concat, strip debugging and minify
gulp.task('scripts', function() {
gulp.src(['./source/js/*.js', './source/js/**/*.js'])
.pipe(concat('script.js'))
.pipe(stripDebug())
.pipe(uglify())
.pipe(gulp.dest('./build/js/'));
});
ฉันมีลำดับที่ถูกต้องของสคริปต์ในของฉันsource/index.html
แต่เนื่องจากไฟล์ถูกจัดเรียงตามลำดับตัวอักษร gulp จะต่อกันunderscore.js
หลังจากbackbone.js
นั้นและลำดับของสคริปต์ในของฉันsource/index.html
ไม่สำคัญมันจึงดูที่ไฟล์ในไดเรกทอรี
ดังนั้นใครมีความคิดเกี่ยวกับเรื่องนี้?
คิดที่ดีที่สุดที่ฉันได้เป็นสคริปต์ที่จะเปลี่ยนชื่อผู้ขายที่มี1
, 2
, 3
เพื่อให้พวกเขาสั่งซื้อที่เหมาะสม แต่ผมไม่แน่ใจว่าถ้าฉันเช่นนี้
เมื่อฉันเรียนรู้เพิ่มเติมฉันพบว่า Browserify เป็นวิธีแก้ปัญหาที่ยอดเยี่ยมมันอาจเป็นความเจ็บปวดในตอนแรก แต่มันก็ยอดเยี่ยม
require
ที่ส่วนหน้าเพราะแน่นอนว่าถ้าคุณใช้ NPM ในฝั่งเซิร์ฟเวอร์ของคุณคุณจะเห็นว่าคุณต้องการโมดูลได้อย่างไร แต่ Browserify ช่วยให้คุณทำเช่นนั้นในรหัสฝั่งไคลเอ็นต์ โปรดทราบว่าการเริ่มต้นใช้งานต้องมีการแก้ไขเล็กน้อย แต่ส่วนใหญ่จะอยู่ใน package.json และหากคุณต้องการใช้กับ gulp.js หรือ grunt.js หากคุณติดตั้งแพ็คเกจเบราว์เซอร์ gulp / grunt คุณสามารถเรียกใช้gulp/grunt browserify
และเปลี่ยนสคริปต์ของคุณให้เป็นสคริปต์หลักหนึ่งมันเป็นช่วงการเรียนรู้เล็กน้อย แต่คุ้มค่ากับ IMO
browserify
สำหรับAngular
โมดูลที่เรียงต่อกันผลงานที่เรียบง่ายและการสั่งซื้อไม่ได้เรื่อง :)