这是抛出错误的代码的一部分:
session.subscribe("acme/channel", function(uri, payload){
console.log("Received message", payload.author);
var myObject = {
'content': payload.message,
'author': { 'username' : payload.author },
}
var newMessages = this.state.messages;
newMessages.push(myObject);
this.setState({messages: newMessages});
}.bind(this));
我不知道为什么但是当我使用'author': { 'username' : payload.author }
时它不喜欢它,但是它可以使用像这样的硬编码字符串:'author': { 'username' : "Mit" }
。
问题不是来自" payload.author"因为这也有效:
var myObject = {
'content': payload.author,
'author': { 'username' : "Mit" },
}
知道如何解决这个问题吗?
答案 0 :(得分:0)
它通过添加一个空字符串起作用:
var myObject = {
'content': payload.msg,
'author': { 'username' : payload.author + ""},
}
我不知道为什么会这样,如果有人有更好的解释,我可以标记他的答案。