这是我的一段代码,它可以正常工作(添加记录),但在添加后抛出错误:
未捕获的错误:违反不变:enqueueCallback(...):你叫
setProps,replaceProps,setState,replaceState,或forceUpdate有回调是不可调用的.
handleSubmit: function(e) {
e.preventDefault();
return $.post('', {page: this.state},
function(data) {
this.props.handleNewPage(data);
return this.setState(this.getInitialState(), 'JSON');
}.bind(this)
);
}
Run Code Online (Sandbox Code Playgroud)
目前没有路线.有人可以帮我解决这个问题吗?
这就是渲染代码现在的样子(我知道这样做是不安全的):
render: function() {
return (
<div className="container-fluid pages_container">
<p dangerouslySetInnerHTML={{__html: this.state.page.body}} />
</div>
);
}
Run Code Online (Sandbox Code Playgroud)
问题是如何安全地渲染它?我知道jQuery中有一些.html()方法,但我没有成功:)
PS jQuery包含在内,因为它是一个Rails应用程序.
我有一个关于JS数组的问题.
例:
var fullArr = [1,2,3,4];
var partArr = [2,3];
var newArr = [];
Run Code Online (Sandbox Code Playgroud)
我们有一个主数组fullArr和一个部分数组partarr.我想创建一个函数/过滤器,它正在寻找现有的项目fullArr而不是partArr.在这个例子中,上面newArr必须等于[1,4].
我尝试过做这样的事情,但它没有正常工作.
for (var k in fullArray) { // [1,2,3,4]
for (var j in selectedArray) { // [1,4]
if (fullArray[k] == selectedArray[j]) {
newArray.splice(selectedArray[j] - 1, 1); // must be [2,3]
break;
}
}
}
Run Code Online (Sandbox Code Playgroud)
制作这个的好方法是什么?谢谢.