码迷,mamicode.com
首页 > 其他好文 > 详细

React学习笔记--Tic Tac Toe例程填坑

时间:2018-02-01 14:38:00      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:bottom   order   free   add   white   sim   ace   mil   html   

React学习笔记

三 Tic Tac Toe例程填坑

  React开发环境搭建好后,就是对React本身进行学习了,React官方的Tic Tac Toe是一个不错的练手样例。本人按照官方样例一步一步的进行开发,前面进行的都还算顺利,可是当进行到Implementing Time Travel章节后,发现按照样例实现的代码存在问题。
  主要表现为以下问题:

  • 返回历史步骤后,步骤列表没有减少;
  • 返回历史步骤后,继续下棋的过程中棋盘会将历史步骤中的棋子再次渲染出来;
  • 多次返回历史步骤后,点击棋盘没有反应;

  通过研究源程序我发现问题出在了jumpTo函数上。原来的函数如下,每次跳转到历史步骤时,没有对state中的history数组进行修正,导致后续的操作产生了混乱。

jumpTo(step) {
        this.setState({
            stepNumber: step,
            xIsNext: (step % 2) === 0,
        });
}

  经过修正后,jumpTop函数如下,上述问题既不会产生了。

jumpTo(step) {
        this.setState({
            stepNumber: step,
            xIsNext: (step % 2) === 0,
            history: this.state.history.slice(0, step + 1),
        });
}

  可能本人的程序是其他地方有问题,导致按照例程开发出来的游戏没有预期的表现,请园友多多指正。

React学习笔记--Tic Tac Toe例程填坑

标签:bottom   order   free   add   white   sim   ace   mil   html   

原文地址:https://www.cnblogs.com/tom-lau/p/8398574.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!