vue3/vite中使用stompjs

2025-04-04 18:25:39

@stomp/stompjs

npm install @stomp/stompjs
# 或者
yarn add @stomp/stompjs
import { Client } from '@stomp/stompjs'

let stompUrl = 'ws://' + location.hostname + ':' + location.port + import.meta.env.VITE_STOMP_API

if (import.meta.env.MODE === 'development' || import.meta.env.MODE === 'test') {
  stompUrl = import.meta.env.VITE_STOMP_API
}

const useStompJsStore = defineStore('StompJs', {
  state: () => ({
    _client: null,
    // 重连后重新订阅
    listenerSubs: [],
  }),
  getters: {
    stompClient: (state) => state._client,
  },
  actions: {
    // 激活stomp客户端
    setActivate() {
      this._client = new Client({
        brokerURL: stompUrl,
        connectHeaders: {},
        debug: function (str) {
          console.log('
免责申明:本站内容大部分来自互联网,部分来源于个人原创。仅供个人学习使用,本站不承担任何法律责任。如有侵权请联系删除!