#javascript #socket.io #webpack-4
#javascript #socket.io #webpack-4
Вопрос:
Я использую webpack4 для объединения файлов моего поставщика. Все работает хорошо, и я включил bundle.js файл на моей веб-странице.
Но проблема в том, что я не могу получить доступ к сокету.ввод-вывод из моего js-файла. Я получаю сообщение об ошибке в консоли, как показано ниже:
main.js:276 Неперехваченная ошибка ссылки: ввод-вывод не определена в main.js: 276
Вот мой сокет.код ввода-вывода
var socket = io().connect();
socket.on('logout', function (data) {
if (data.includes(userId))
window.location.href = '/auth/signout';
});
Вот мой webpack.config.js файл
const path = require('path');
const glob = require('glob');
const webpack = require('webpack');
module.exports = {
target: "web",
entry: {
page1: glob.sync('./public/js/vendor/*.js')
},
output: {
path: path.resolve(__dirname, "./public/build"),
filename: "bundle.js",
},
plugins: [
new webpack.ProvidePlugin({
$: "jquery",
jQuery: 'jquery',
"window.jQuery": 'jquery',
})
],
module: {
rules: [
{test: /modernizr/, loader: 'imports-loader?this=>window!exports-loader?window.Modernizr'},
{test: path.resolve(__dirname, './public/js/vendor/wow.min.js'), loader: 'imports-loader?this=>window!exports-loader?window.WOW'}
]
},
resolve: {
modules: [
path.resolve(__dirname, "./public/js/vendor")
]
},
externals: {
jquery: 'jQuery',
jspdf: 'jspdf',
moment: 'moment',
$: 'jQuery'
},
mode: 'development',
devtool: 'inline-source-map',
};
Я не знаю, что я здесь делаю. Я много искал, но не нашел ничего полезного!
Спасибо
Комментарии:
1. Вам не хватает инициализации ввода-вывода ? « const io = require (‘socket.io ‘)(приложение); «
Ответ №1:
Вам не хватает инициализации ввода-вывода?
const io = require('socket.io')(app);
Комментарии:
1. Я использую сокет. ввод-вывод на стороне клиента. Мой код хорошо работал до того, как я представил webpack.
2. Я уже проверил это. У меня это не сработало. Я использую интерфейс js. Не какие-либо фреймворки, такие как React / Angular.
3. извините, я не могу поделиться своим репозиторием