2016-12-13 4 views
0

У нас есть приватный репозиторий npm, где у нас есть файл css как часть папки lib.import css file from node_modules

При попытке потребовать файл CSS, используя

require('<module_name>/lib/abc.css') 

и используя Webpack для загрузки, что я получаю ниже ошибки:

SyntaxError: Unexpected token {

Любая помощь, как импортировать такие файлы

+0

Ваш подход является правильным, 'требуют' заставит Webpack связывать этот CSS. Можете ли вы предоставить, что css и показать конфигурацию webpack, где вы заботитесь о css? –

ответ

0

Я тоже долго стоял в этом вопросе (я новичок в мире node.js/Meteor/React/JavaScript). Я нашел решение с помощью webpackJS.

Мое рабочее решение (применяется к крошечному приложению, которое должно облегчить понимание, я только показываю datagrid с использованием жестко кодированных данных) доступен на моем GitHub repository (commit 902c92c). Приложение называется «reactDataGrid», это подпапка репозитория, вам просто нужно запустить «метеорит» в этой папке.

два ключевых шага в моем случае были:

  • создать файл .babelrc с содержанием описано here (и скопировал ниже). Я считаю, что это помогает webpack проанализировать синтаксис JSX. У меня такое чувство, что это может быть ключом к вашей проблеме, так как это сообщается как SyntaxError.

.babelrc

{ 
    "presets": [ 
    [ 
     "es2015", 
     { 
     "modules": false 
     } 
    ], 
    "react" 
    ] 
} 
  • require('react-datagrid/index.css') заявление в моем main.jsx файл, который говорит, Webpack включить этот файл CSS в дереве зависимостей моего приложения. Это на самом деле инструкция, описанная в README репозитория GitHub zippyui/response-datagrid. (К сожалению StackOverflow пределы двух звеньев в моем посте, так что я не могу связать его здесь больше)

Я не могу гарантировать, что это предпочтительным способ сделать это, но я могу сказать, что это работает для меня. Я надеюсь, что это помогает.

Бест, Кевин