programing

Laravel의 vue.js 구성 요소에 있는 socket.io을 가져오는 동안 문제 발생

prostudy 2022. 3. 13. 11:04
반응형

Laravel의 vue.js 구성 요소에 있는 socket.io을 가져오는 동안 문제 발생

나는 Redis와 Laravel-server를 사용하지 않고 vue.js 컴포넌트와 socket.io이 내장된 Laravel 5.8을 사용하고 있다.

npm 설치

npm install vue-socket.io

Laravel의 리소스/js/app.js 파일

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

다음을 사용하여 컴파일할 때 오류가 없음npm run watch명령하다브라우저에서 출력을 확인해보니 다음과 같은 오류가 있다.

클래스를 함수로 호출할 수 없음

문제는 다음과 같다.Vue.use(VueSocketio);

제안 좀 해주시겠습니까?

아래는 패키지 입니다.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"
}

노드.js 사이드 코드.이건 라라벨과는 전혀 다른 작업 디렉토리야

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',
}));

A를 추가하십시오.new보다 먼저 말하다.VueSocketio.

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

옵션 목록을 지정하는 것을 잊지 마십시오.

참조URL: https://stackoverflow.com/questions/57633127/issue-while-trying-to-import-socket-io-in-vue-js-component-in-laravel

반응형