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
).