Estoy creando una aplicación React usando create-react-app para que la aplicación esté lista para el servidor.
Al importar un complemento javascript de arranque como 'affix.js', aparece el error 'Error de referencia no detectado: jQuery no está definido' y la página ya no se carga.
Estoy importando todos los módulos a través del archivo index.js ya que con la aplicación create-react no parece cargar las importaciones 'src' y 'link' del archivo index.html.
Estoy importando el complemento de arranque así: import 'bootstrap/js/affix.js'
Intenté importar jquery de las siguientes maneras, en la parte superior del archivo index.js, pero ninguno funciona:
¿Algunas ideas?
Cree el mantenedor de la aplicación React aquí.
import $ from 'jquery';y luego usando
$.something()debería funcionar bien si está utilizando jQuery 2.x o superior .
Si no es así, presente un problema.
En sus ejemplos, el problema podría ser que escribió import jquery from 'jquery' pero usó jQuery como nombre de variable. Debería haber escrito import jQuery from 'jquery' (o cualquier otro nombre siempre que lo use de manera consistente). Los nombres de variables distinguen entre mayúsculas y minúsculas en JavaScript.
Por si alguien aterriza aquí. Resolví un problema similar para 'create-react-app' usando esto:
import jQuery from 'jquery'; window.jQuery = jQuery;y para importar otros paquetes que necesitan jQuery, debe importar esos paquetes después de esto, en el caso de affix.js,
require 'bootstrap/js/affix.js';Puede copiar el archivo jquery.js en la carpeta "pública" de reacción e importarlo en su archivo index.html