Я использую реактивный стартовый набор для программирования на стороне клиента. Он использует реакцию и webpack. Нет index.html или любого html для редактирования, все js файлы. Мой вопрос в том, хочу ли я загрузить поставщика js lib из облака, как это сделать?
Это легко сделать в html файле. <script src="https://forio.com/tools/js-libs/1.5.0/epicenter.min.js"></script>
Однако в js файле он использует только установленные npm пакеты. Как я могу импортировать вышеупомянутый lib без html файла? Я попытался импортировать и потребовать, они работают только для локальных файлов.
обновление 10/21/15 Пока я пробовал два направления, и не идеален.
- @minheq да, есть файл html файла для ответа на запуск набора. Это html.js под src/components/Html. Я могу установить облако lib и все его зависимости там, как это:
<div id="app" dangerouslySetInnerHTML={{__html: this.props.body}} />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="https://forio.com/tools/js-libs/1.5.0/epicenter.min.js"></script>
<script src="/app.js"></script>
<script dangerouslySetInnerHTML={this.trackingCode()} />
</body>
Хорошая новость - это работает, мне не нужно ничего делать в js файле, не импортировать и не требовать. Однако теперь у меня есть две jquery-библиотеки, загруженные по-разному. Один здесь, другой через npm и webpack. Интересно, что это вызовет у меня проблемы позже. Используемая мной маршрутная реакция дает мне ошибку "undefined variable", если я ввожу ни одного домашнего пути в окно браузера из-за загрузки на стороне сервера, я думаю. Поэтому это решение не очень хорошо.
- Используйте функцию внешних веб-страниц. Это описано как: ссылка. "Вы также можете использовать внешние параметры для приложений, когда хотите импортировать существующий API в пакет. Т.е. вы хотите использовать jquery из CDN (отдельный тег) и все еще хотите потребовать (" jquery ") в своем комплекте. укажите его как внешний: {externals: {jquery:" jQuery "}}."
Однако документация, которую я нашел в нескольких местах, все взволнована тем, как это сделать. До сих пор я понятия не имею, как использовать его для замены
<script src="https://forio.com/tools/js-libs/1.5.0/epicenter.min.js"></script>
в html.