gpt4 book ai didi

laravel - 尝试在 Laravel 的 vue.js 组件中导入 socket.io 时出现问题

转载 作者:搜寻专家 更新时间:2023-10-30 22:35:53 25 4
gpt4 key购买 nike

我在不使用 redis 和 laravel-echo-server 的情况下使用带有内置 vue.js 组件和 socket.io 的 Laravel 5.8

npm 安装

npm install vue-socket.io

Laravel 中的 resources/js/app.js 文件

import VueSocketio from 'vue-socket.io';
Vue.use(VueSocketio);

使用npm run watch命令编译没有报错。当我在浏览器中检查输出时,出现以下错误。

Cannot call a class as a function

问题出现在这一行:Vue.use(VueSocketio);

你能推荐一下吗?

下面是Package.json文件

"devDependencies": {
"axios": "^0.18",
"bootstrap": "^4.1.0",
"cross-env": "^5.1",
"jquery": "^3.2",
"laravel-mix": "^4.0.7",
"lodash": "^4.17.5",
"popper.js": "^1.12",
"resolve-url-loader": "^2.3.1",
"sass": "^1.15.2",
"sass-loader": "^7.1.0",
"vue": "^2.5.17",
"vue-template-compiler": "^2.6.10",
"vue-vpaginator": "^1.0.0"
},
"dependencies": {
"bootstrap-vue": "^2.0.0-rc.24",
"vee-validate": "^2.2.11",
"vue-chat-scroll": "^1.3.5",
"vue-recaptcha": "^1.2.0",
"vue-socket.io": "^3.0.7",
"vuejs-dialog": "^1.4.0"
}

Node.js 端代码。这是与 Laravel 完全不同的工作目录

const express = require("express");

class Server {

constructor() {
this.app = express();
this.port = process.env.PORT || 89;
this.host = process.env.HOST || `192.168.43.173:89`;
}

includeRoutes() {
}

appExecute() {

var server = this.app.listen(this.port, () => {
console.log(`Listening on http://${this.host}`);
});
}
}

const server = new Server();
server.appExecute();

根据 Javas 的建议更新代码

Vue.use(new VueSocketio({
debug: true,
connection: 'http://192.168.43.173:89',
}));

最佳答案

你应该在 VueSocketio 之前添加一个 new keywoard。

Vue.use(new VueSocketio({}));

不要忘记指定 options 的列表.

关于laravel - 尝试在 Laravel 的 vue.js 组件中导入 socket.io 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57633127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com