node.js - online - modulos node js
requieren bibliotecas cdn en browserify sin agruparlo en el archivo final js (2)
Si tengo una biblioteca que se está bajando de cdn y no me gustaría que sea parte del archivo js final, pero puedo solicitarlo usando browserify, ¿cómo lo resolvería?
Así es como lo resuelvo actualmente usando alias
y un archivo shim.
browserify: {
options: {
debug: true,
transform: [ ''reactify'' ],
alias: [
''client/shims/jquery.js:jquery''
]
},
app: {
src: ''client/app.js'',
dest: ''public/app.js''
}
}
aquí está el archivo shim client/shims/jquery.js
que alias jquery
para poder usar require(''jquery'')
lugar de la ruta completa.
module.exports = $;
¿Hay un atajo en grunt-browserify para soportar este escenario? Me gustaría saber si es posible definirlo en Gruntfile.js sin crear el archivo shim.
Agregar external: [ ''jquery'' ]
parece ignorarlo por completo y no funciona.
Con browserify-shim puedes agregar esto en tu archivo package.json:
"browserify": {
"transform": [
"browserify-shim"
]
},
"browserify-shim": {
"jquery": "global:$"
}
Entonces jquery estará disponible en sus módulos a través de require(''jquery'')
Si carga jQuery antes del paquete Browserify en la página, $
estará disponible como global.