vue-stomp

WebJar for vue-stomp

License

License

MIT
GroupId

GroupId

org.webjars.npm
ArtifactId

ArtifactId

vue-stomp
Last Version

Last Version

1.0.3
Release Date

Release Date

Type

Type

jar
Description

Description

vue-stomp
WebJar for vue-stomp
Project URL

Project URL

http://webjars.org
Source Code Management

Source Code Management

https://github.com/FlySkyBear/vue-stomp

Download vue-stomp

How to add to project

<!-- https://jarcasting.com/artifacts/org.webjars.npm/vue-stomp/ -->
<dependency>
    <groupId>org.webjars.npm</groupId>
    <artifactId>vue-stomp</artifactId>
    <version>1.0.3</version>
</dependency>
// https://jarcasting.com/artifacts/org.webjars.npm/vue-stomp/
implementation 'org.webjars.npm:vue-stomp:1.0.3'
// https://jarcasting.com/artifacts/org.webjars.npm/vue-stomp/
implementation ("org.webjars.npm:vue-stomp:1.0.3")
'org.webjars.npm:vue-stomp:jar:1.0.3'
<dependency org="org.webjars.npm" name="vue-stomp" rev="1.0.3">
  <artifact name="vue-stomp" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.webjars.npm', module='vue-stomp', version='1.0.3')
)
libraryDependencies += "org.webjars.npm" % "vue-stomp" % "1.0.3"
[org.webjars.npm/vue-stomp "1.0.3"]

Dependencies

compile (2)

Group / Artifact Type Version
org.webjars.npm : sockjs-client jar [1.1.1,2)
org.webjars.npm : webstomp-client jar [1.0.3,2)

Project Modules

There are no modules declared in this project.

vue-stomp

Stomp (Websokct) with send message timeout monitor plugin for VueJS.

Install

NPM

You can install it via NPM.

$ npm install vue-stomp

Manual

Download zip package and unpack and add the vue-stomp.js file to your project from dist folder.

https://github.com/FlySkyBear/vue-stomp/archive/master.zip

Usage

Register the plugin, it will connect to /

import VueStomp from "vue-stomp";
Vue.use(VueStomp, endpoint);

or connect to other address:

Vue.use(VueStomp, "http://otherserver:8080/endpoint");

##Memo WM: WithMonitor

Use it in your components:

<script>
    export default {
        data () {
          return {
            invokeIdCnt: 0
          }
        },
        methods: {
          onConnected(frame){
            console.log('Connected: ' + frame);
            ...
            this.$stompClient.subscribe('/topic/username', this.responseCallback, this.onFailed);
          },
          onFailed(frame){
            console.log('Failed: ' + frame);
            ...
          },         
          connectSrv(){
            var headers = {
              "login": 'guest',
              "passcode": 'guest',
              // additional header
              ...
            };
            this.connetWM(headers, this.onConnected, this.onFailed);    
          },
          getInvokeId(){
            let hex = (this.invokeIdCnt++ ).toString(16);
            var zero = '0000';
            var tmp  = 4-hex.length;
            return zero.substr(0,tmp) + hex;
          },
          send(){
              let destination = '/exchange/test'
              let invokeId = this.getInvokeId();
              ...
              let body = msgHead + invokeId + msgBody;
              this.sendWM(destination, body, invokeId, this.responseCallback, 3000);
          },
          responseCallback(frame){
            console.log("responseCallback msg=>" + frame.body);
            let invokeId = frame.body.substr(invokeIdIndex, 4);
            this.removeStompMonitor(invokeId);
          },
          disconnect(){
            this.disconnetWM();
          }
        },
        stompClient:{
          monitorIntervalTime: 100,
          stompReconnect: true,
          timeout(orgCmd) {              
            ...
          }
       }
    };

</script>

Build

This command will build a distributable version in the dist directory.

npm run build

Test

npm test

Contribution

Please send pull requests improving the usage and fixing bugs, improving documentation and providing better examples, or providing some testing, because these things are important.

License

vue-stomp is available under the MIT license.

Contact

Copyright (C) 2016-2020 FlySkyBear

Versions

Version
1.0.3