动画添加与 WebSocket 交互实现
1. 动画清理
在使用 useEffect 钩子时,其依赖列表包含 commandToAnimate 和 isDrawingLine 。这意味着当这些值更新时, useEffect 钩子会被拆除并重新启动。通常情况下,这不会影响应用程序,但当用户重置屏幕时,需要进行清理。
1.1 添加测试
在 test/Drawing.test.js 文件底部添加以下测试:
it('calls cancelAnimationFrame on reset', () => {
renderWithStore(<Drawing />, {
script: { drawCommands: [horizontalLine] }
});
renderWithStore(<Drawing />, { script: { drawCommands: [] } });
expect(window.cancelAnimationFrame).toHaveBeenCalledWith(
cancelToken
);
});
同时,更改 beforeEach 块:
describe('Drawing', () =>
超级会员免费看
订阅专栏 解锁全文
653

被折叠的 条评论
为什么被折叠?



