javascript jquery fullcalendar external browserify

javascript - Browserify FullCalendar con jQuery externo



external (1)

Pude hacerlo funcionar cambiando require(''jquery'') en la fábrica de todo el calendario a $ .

Además, no es necesario usar import $ from ''jquery'' en su archivo index.js. Ya es una dependencia en el calendario completo npm.

despues de correr

browserify index.js -t babelify -x jquery > index.min.js

Edite el archivo index.min.js en la función de fábrica de todo el calendario donde se lee:

else if(typeof exports === ''object'') { module.exports = factory(require(''jquery''), require(''moment'')); }

a:

else if(typeof exports === ''object'') { module.exports = factory($, require(''moment'')); }

Alternativamente, puede hacer esta edición directamente en el archivo node_modules / fullcalendar / dist / fullcalendar.js.

¡Espero que esto ayude!

Estoy cargando jQuery desde un CDN y se produce este error cuando intento importar FullCalendar en mis scripts:

Error no detectado: no se puede encontrar el módulo ''jquery''

Aquí está mi guión:

''use strict'' import $ from ''jquery'' import ''fullcalendar'' $(''#calendar'').fullCalendar()

Estoy ejecutando este comando para transformar mi script:

browserify index.js -t babelify -x jquery > index.min.js

Mi HTML se ve así:

<!DOCTYPE html> <div id=calendar></div> <script src=https://code.jquery.com/jquery-2.2.0.min.js></script> <script src=index.min.js></script>

También he probado browserify-shim with depends: [''jquery'', ''moment''] pero no hace ninguna diferencia.

Sospecho que se debe a que el archivo FullCalendar JS tiene un envoltorio UMD que require(''jquery'') y require(''moment'') pero pensé que la marca externa sería lo suficientemente inteligente como para detectar esto.

¿De alguna manera puedo solucionar este problema?

Actualización: este fue un ejemplo mínimo de lo que estoy tratando de lograr, sin embargo, mi código real involucra muchas más dependencias que FullCalendar, y todas las dependencias de terceros se concatenan en un archivo vendor.min.js , separado de nuestro código (como index.js ).