usar tutorial español ejemplos como bootstrap twitter-bootstrap import ecmascript-6

twitter-bootstrap - tutorial - como usar bootstrap



¿Cuál es la mejor manera de cargar Bootstrap con una importación de ES6? (3)

Si tiene un Webpack en su compilación ...

... tendrás que trabajar con el plugin de proporcionar de Webpack . Como el error es que jQuery is not defined , lo definiremos / le proporcionaremos el complemento:

En la webpack configuration del webpack configuration :

// webpack.config.js ... plugins: [ new webpack.ProvidePlugin({ jQuery: ''jquery'', $: ''jquery'' }) ] ...

Ahora, en nuestro ES6/2015 module :

// main.js ... // jquery is required for bootstrap import $ from ''jquery'' // bootstrap import ''bootstrap'' // bootstrap css import ''bootstrap/dist/css/bootstrap.css'' ...

Referencia: https://2017-sparkler.rhcloud.com/2017/02/01/bootstrap-in-webpack-es6-2015-project/

Buena suerte.

Recientemente cambié de Require.js a usar WebPack con Babel. En el pasado, usaba el estándar CommonJS en mis módulos JS, como este

var $ = require(''jquery''); require(''bootstrap'');

Como Bootstrap es un plugin de jQuery, jQuery se cargaría primero y el bootstrap cargaría el segundo.

Babel me permite usar declaraciones de import ES6. Pero cuando escribo

import $ from ''jquery''; import Bootstrap from ''bootstrap'';

Me sale el error de que $ is undefined . Bootstrap asume que la window.$ Está presente, pero la import no contamina el objeto de la ventana, lo cual es bueno, pero deja mi código así:

// legacy loading for bootstrap var $ = require(''jquery''); window.$ = $; require(''bootstrap''); // the rest of the imports import _ from ''underscore'';

Debe haber una mejor solución. Cualquier ayuda apreciada.


Ampliando la respuesta de Husterknupp, aquí está la solución completa usando Bootstrap 4 Alpha :

Instale los paquetes necesarios:

npm install [email protected] jquery tether --save

Agregue a su configuración de paquete web (esto es webpack.base.conf.js para mí):

plugins: [ new webpack.ProvidePlugin({ jQuery: ''jquery'', jquery: ''jquery'', $: ''jquery'', Tether: ''tether'' }) ]

En su aplicación, importe así:

import ''jquery''; import ''tether''; import ''bootstrap''; import ''bootstrap/dist/css/bootstrap.css'';