jQuery, загруженный с ProvidePlugin в Webpack 2, не работает после изменения маршрута
Я работаю в Angular4 и использую настройки Webpack для сборки приложения. Я хочу использовать jQuery в своем проекте, поэтому я нашел его в Google ProviderPlugin
это предлагается Webpack для глобальной загрузки модулей.
Однако проблема, с которой я сталкиваюсь, немного странная; в первый раз, когда страница загружается, страница работает нормально, и весь код, связанный с jQuery, работает нормально, но когда я изменяю страницу или маршрут, jQuery теряет свою функциональность, и последующие страницы не работают должным образом. Я что-то упустил, код, который я использовал для плагина, стандартный
new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery'
})
Я также ищу другие решения, если есть другие способы сделать это, пожалуйста, отметьте, что это было бы очень полезно.
Огромное спасибо.
1 ответ
Также вы можете использовать HtmlWebpackPlugin, который будет создавать ваши HTML-страницы. И установить inject:true. Вероятно, проблема заключается в том, что при попытке доступа к другой странице jquery не объявляется, поэтому вам нужна главная страница шаблона с jquery, и из этого шаблона создайте следующие html-страницы. Пример ниже:
new HtmlWebpackPlugin({
filename: 'index.html',
template: 'index.html',
inject: true
})
Поэтому скачайте пакет в npm, настройте, установите его и настройте.
Также вы можете отредактировать вставку jquery следующим образом:
new webpack.ProvidePlugin({
$: 'jquery',
jquery: 'jquery',
'window.jQuery': 'jquery',
jQuery: 'jquery'
})