You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Vue-Socket.io/example/script.js

49 lines
1.1 KiB
JavaScript

9 years ago
Vue.use(VueSocketio, 'http://metinseylan.com:1923');
new Vue({
el: '.container',
data: {
join: false,
name: null,
users: null,
message: null,
messages: {}
},
methods: {
joinChat: function (name) {
if (name) {
this.$socket.emit('join', name);
}
},
send: function (message) {
if (message) {
this.$socket.emit('send', message);
this.$set('message', null);
}
}
},
watch: {
messages: function () {
setTimeout(function () {
$('.messages ul').scrollTop(999999999);
}, 100)
}
},
sockets: {
users: function (users) {
this.$set('users', users);
},
joined: function () {
this.$set('join', true)
},
messages: function (data) {
this.$set('messages', data);
},
onmessage: function (data) {
this.messages.push(data);
},
adduser: function (user) {
this.users.push(user);
}
}
});