gpt4 book ai didi

javascript - 未捕获的类型错误 : Cannot read property 'parentNode' of undefined

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:24:25 26 4
gpt4 key购买 nike

我以前从来没有得到过这个,我只能假设它也找不到它试图渲染的 div 元素?这没有意义,因为当我 console.log 在事件触发之前和之后存在问题的元素时,它存在,但错误被抛出......

下面是主干 View - 渲染一个 reactjs 组件,我们传入 deleteEvent: this.handleDeleteEvent.bind(this) 这允许我们在一行中单击删除,它会将其冒泡事件并遍历,本质上是重新调用集合并重新呈现组件。

但导致手头问题的是 React.renderComponent():

AisisWriter.Views.PostIndex = AisisWriter.Views.CoreView.extend({

writer_posts: new AisisWriter.Collections.Posts(),

handleDeleteEvent: function(id){
var toDelete = new AisisWriter.Models.Post();
toDelete.set({id: id});
toDelete.destroy().then(this.deleted(id), this.failedToDelete);
return false
},

deleted: function(id) {
var options = { reset: true };
this.writer_posts.fetch(options).then(this.postsRecieved.bind(this), this.serverError);
},

postsRecieved: function(collection, response, options) {
this.render(collection);

if ($('#flash-error').is(':visible')){
$('#flash-error').hide();
}

$('#flash-success').show();
},

serverError: function() {
if ($('#flash-success').is(':visible')){
$('#flash-success').hide();
}

$('#flash-error').show();
},

failedToDelete: function() {
if ($('#flash-success').is(':visible')){
$('#flash-success').hide();
}

$('#flash-error').show();
},

render: function(postsObject) {
element = this.getElement();

var totalPerPage = postsObject.total_pages.total;
var posts = postsObject.posts;

React.renderComponent(new PostTable({posts: posts, maxPages: totalPerPage, deleteEvent: this.handleDeleteEvent.bind(this)}), element);
}

});

这是第一次渲染 - 效果很好。您会看到一个包含帖子的表格,然后您单击删除它,它会一直通过 - 从模型中删除它,一直召回集合以进行渲染。它从那里获取总页数、帖子,然后将它们传递给组件,在那个阶段我得到:

未捕获的类型错误:无法读取未定义的属性“parentNode”

有没有人有什么想法?

最佳答案

在您的 PostTable 组件中,您是否显式呈现 <tbody>元素?某些浏览器会在初始渲染后自动添加一个,这可能会导致此问题。效果图 <tbody>明确应该解决这个问题。

关于javascript - 未捕获的类型错误 : Cannot read property 'parentNode' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24064534/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com