2016-11-27 3 views
0

Это странно. Он работает с другими проектами, но не с React-Bootstrap. Например;React-bootstrap, не позволяющий синтаксису `import {components}`

import {Jumbotron, Button} from 'react-bootstrap'; 
import * as ReactBootstrap from 'react-bootstrap'; 

оба дают мне Invalid argument must be an array в all.js:12 файл. Тем не менее, импорт, как это работает:

var Jumbotron = require('react-bootstrap/lib/Jumbotron'); 
var Button = require('react-bootstrap/lib/Button'); 

Конечно, я могу использовать, но это более эффективно, чтобы объявить массив компонентов, которые я хочу. Почему React-Bootstrap не поддерживает что-то настолько тривиальное?

+0

Вы используете webpack? – wolendranh

ответ

0

react-bootstrapdon't support ES6 modules natively.

Другими словами, необходимо выполнить некоторую работу, чтобы иметь возможность использовать импорт ES6. Один из способов - использовать транспилер, такой как Babel, который будет transpile your code from ES6 to CommonJS modules.

+0

Я использую babel. У меня есть файл 'babelrc' с' stage-0', я использую в своем коде множество других элементов ES6. – IronWaffleMan

+0

Я попытался воспроизвести вашу проблему в [webpackbin здесь] (http://www.webpackbin.com/NyN9ymtMG). Должно быть хорошо с 'stage-0' и' es2015' – glennreyes

Смежные вопросы