2017-01-13 9 views
0

Я использую шаблонный Electron, отсюда: https://github.com/szwacz/electron-boilerplate/Ошибки с импортом ВЫБ.2 в проект электронного

Она использует Глоток-накопительный пакет для объединения активов, а сервер DEV может быть запущена с npm start.

Вот мои операторы импорта из app.js:

import os from 'os'; 
import { remote } from 'electron'; 
import jetpack from 'fs-jetpack'; 
import env from './env'; 

import jquery from 'jquery'; 
import parsley from 'parsleyjs'; 
import select2 from 'select2/dist/js/select2.js'; 

import { setupForm } from './form/form'; 

Все отлично работает на начальной загрузки с npm start, но как только я отредактировать файл и сохранить, который вызывает watch перезагрузить сборку, я получаю сообщение об ошибке:

Error: Could not load select2/dist/js/select2.js (imported by /##/repo-name-example/src/app.js): ENOENT: no such file or directory, open 'select2/dist/js/select2.js' 
at /##/repo-name-example/node_modules/rollup/dist/rollup.js:9428:10 
at process._tickDomainCallback (internal/process/next_tick.js:129:7) 

Если я отменить процесс и просто npm start снова, все в порядке.

Зачем ему забыть, где находится select2?

ответ

0

Поскольку вы импортируете вручную, используя путь к файлу, а не по имени импорта, как Jquery линии, вам нужно использовать

import select2 from './select2/dist/js/select2.js'; 

Обратите внимание на ./ в самом начале. В противном случае он эффективно ищет модуль, называемый select2/dist/js/select2.js, вместо использования пути.

Вы также, возможно, потребуется сделать его изменить, чтобы

import select2 from './node_modules/select2/dist/js/select2.js'; 

(предполагая, что тот, где эта папка)

+0

Спасибо за пятнистость, что я пробовал: 'импорт ВЫБ.2 из» ../node_modules /select2/dist/js/select2.js', ' Но теперь говорят: ' Error: 'по умолчанию' не экспортируются node_modules/Select2/расстояние/JS/select2.js' Так что я думаю, может быть это проблема select2 em, и их версия AMD, похоже, не включена в эту сборку. –