Tôi đang sử dụng browserify để đóng gói mã front-end. Nó đã được tuyệt vời cho đến nay, nhưng tôi đã gặp khó khăn khi trộn các gói npm và non npm. Ví dụ, sử dụng phiên bản npm của jQuery với các phiên bản không phải CJS của các plugin jQuery.Sử dụng browserify với npm jQuery và các plugin không phải của npm
Giải pháp hiện tại của tôi là sử dụng khóa browser
trong package.json để trỏ đến vùng của jQuery và sau đó sử dụng browserify-shim
để thêm nó làm phụ thuộc của các plugin.
Có cách nào sạch hơn để làm điều này hơn những gì tôi hiện có không?
Edit: tôi đang cố gắng sử dụng NPM và package.json để quản lý tất cả phụ thuộc của tôi, vì vậy tôi không muốn sử dụng Chòi chơi cho dự án này. Hãy gọi cho tôi điên:)
Package.json
"dependencies": {
"jquery": "~2.1.0",
"browserify": "latest",
"browserify-shim": "^3.5.0",
"jquery-waypoints": "[email protected]:imakewebthings/jquery-waypoints.git",
"jquery-validation": "git://github.com/jzaefferer/jquery-validation"
},
"browser": {
"jquery": "./node_modules/jquery/dist/jquery.js",
"jquery-waypoints": "./node_modules/jquery-waypoints/waypoints.js",
"jquery-validate": "./node_modules/jquery-validation/build/release.js"
},
"browserify-shim": {
"jquery": "$",
"jquery-waypoints": {
"depends": [
"jquery"
]
},
"jquery-validate": {
"depends": [
"jquery"
]
}
},
"browserify": {
"transform": [
"browserify-shim"
]
}
Tôi đang giải quyết cùng một vấn đề hiện tại. Có răng cưa 'jquery' với'./Node_modules/jquery/dist/jquery.js' tạo một bản sao của jQuery trong gói cuối cùng của bạn không? Hoặc, cái gì không làm việc với 'package.json' đó? –
@ MichaelMartin-Smucker Nó hoạt động tốt (không có bản sao 'jquery') nhưng tôi không thích phải cấu hình mọi thứ bằng tay thông qua cấu hình shim - Tôi lười biếng :). Chúc may mắn! –
Cảm ơn bạn! Câu hỏi đó trả lời câu hỏi của tôi. Tôi không thể nhận được jquery.mmenu để làm việc, nhưng mã của bạn chỉ cho tôi cách. 1 cho hiển thị mã làm việc trong một câu hỏi :) – xlttj