Javascript 如何在vue.js中将项目添加到列表
我是vue.js的新手,这里是我的问题:Javascript 如何在vue.js中将项目添加到列表,javascript,vue.js,Javascript,Vue.js,我是vue.js的新手,这里是我的问题: data: { ws: null, newMsg: '', username: null, usersList: '' }, created: function() { var self = this; this.ws = new WebSocket('ws://' + window.location.host + '/ro
data: {
ws: null,
newMsg: '',
username: null,
usersList: ''
},
created: function() {
var self = this;
this.ws = new WebSocket('ws://' + window.location.host + '/room');
this.ws.addEventListener('message', function(e) {
var msg = JSON.parse(e.data);
if (msg.Message == "joined" ) {
self.usersList.push(msg.Name); // <--Problem here
}
});
},
我也尝试了一个固定字符串,而不是msg.Name
,但是得到了相同的错误
这里有什么问题以及如何修复它?1.使用
userList:[]
作为数组,您可以使用push()
方法,请参见此处:
2.当您的e.data
是一个数组时,例如:[1,2,3,4]
,您可以使用concat
组合两个数组
var arr1 = [1,2,3,4];
var arr2 = [5,6,7];
var arr = arr1.concat(arr2); // [1, 2, 3, 4, 5, 6, 7]
或者,Array.prototype.push.apply(arr1,arr2)
从第二个数组中推送所有元素
var arr1 = [1,2,3,4];
var arr2 = [5,6,7];
Array.prototype.push.apply(arr1, arr2);
console.log(arr1);//[1, 2, 3, 4, 5, 6, 7]
您在数据中声明为字符串
usersList:''
,请将其更改为usersList:[]
@MatJ Right。刚想出来!请回答,我接受。
var arr1 = [1,2,3,4];
var arr2 = [5,6,7];
Array.prototype.push.apply(arr1, arr2);
console.log(arr1);//[1, 2, 3, 4, 5, 6, 7]