He usado la función require requirJS, pero quiero algo como esto en javaScript vainilla. ¿Cómo resuelvo esto?
require(['underscore', 'jquery', 'settings', 'text!/core/users/settings.js/?v=' + (+new Date)], function (_, $, Settings, userSettings) { userSettings = (typeof userSettings === "object" || typeof userSettings === 'function') && (userSettings !== null) ? userSettings : JSON.parse(userSettings) console.log('settings', Settings); });La función require (al menos la que está usando) es parte de Require.js y no tiene nada que ver con jQuery. Implementa módulos AMD.
Los navegadores no tienen soporte nativo para módulos AMD.
Los navegadores modernos tienen soporte nativo para módulos ECMAScript.
Use <script type="module"> para cargar el módulo que actúa como su punto de entrada.
A continuación, puede utilizar la import (p. ej., import defaultExport from 'url/to/module.js' ) para importar valores exportados (p. ej. export default someVariable; ) desde ese módulo.
En pocas palabras, le gustaría usar etiquetas <script> para usar las otras bibliotecas.
Alternativamente, puede usar la sintaxis "importar ()" asíncrona.
Aún más alternativamente, podría estar súper loco al respecto y enviar una solicitud para obtener la biblioteca de algún CDN o tarball de NPM (aunque la solución de NPM probablemente no funcionará debido a que tiene que descomprimir el archivo .tar), luego configure alguna variable igual a los datos de búsqueda recibidos, esencialmente emulando lo que la etiqueta <script> hará por usted, pero en JS simple.