sillydaddy
5.46D
4.77D
V2EX  ›  设计

撤销重做(RedoUndo)的作用对象,应该是页面,还是文档呢?

  •  
  •   sillydaddy · Aug 21, 2022 · 2159 views
    This topic created in 1435 days ago, the information mentioned may be changed or developed.

    如果一个文档(Document),有多个视图(View)——比如同一份文档数据,同时打开了 2 个编辑 tab 页面,

    那么撤销重做,是只撤销重做当前页面上作的修改?还是对文档的修改都算?

    如果都算的话,感觉有点「所见非所得」:在当前页面上,撤销的却包含了其他页面上作出的修改。

    大家一般是怎么处理的呢?

    Opportunity
        1
    Opportunity  
       Aug 21, 2022   ❤️ 1
    其实是协同编辑的问题吧,应该是只操作当前视图的

    https://www.zhihu.com/question/367915946
    sillydaddy
        2
    sillydaddy  
    OP
       Aug 22, 2022
    @Opportunity
    感谢。我发完帖子才发现,一般的撤销重做的实现,都是基于「栈」的,不同页面上的操作,都会压到栈里,所以很难对单独一个页面的操作作撤销。

    看了你的回复,发现确实跟协同编辑比较像。没想到还有这种解决方案。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   965 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 633ms · UTC 22:55 · PVG 06:55 · LAX 15:55 · JFK 18:55
    ♥ Do have faith in what you're doing.