美文网首页
JavaScript命令模式

JavaScript命令模式

作者: 晓蟲QwQ | 来源:发表于2020-12-30 20:02 被阅读0次

    命令模式可以解耦请求对象和接收对象,两者互不了解,只保持同一接口。命令模式是将逻辑代码进行封装为command对象。

    作用

    1. command对象拥有更长的生命周期。
    2. command支持撤销、缓存、排队等。
    3. 已经执行过的命令可以被保存,进行重现。
    4. 多个小命令可以组合成一个宏命令(组合模式)
    var MenuBar = {
        refresh: function(){
            console.log( '刷新菜单界面' );
        }
    }
    
    var commandStack = [];   //可以用来保存命令,实现“重播”
        
    var RefreshMenuBarCommand = function(receiver){
        return {
            undo: function(){
                //实现撤销
            }
            execute: function(){
                receiver.refresh();
            }
        }
    };
    
    var setCommand = function( button, command ){
        button.onclick = function(){
            command.execute();
        }
    }
    
    
    
    var refreshMenuBarCommand = RefreshMenuBarCommand( MenuBar );
    setCommand(button1, refreshMenuBarCommand);
    

    相关文章

      网友评论

          本文标题:JavaScript命令模式

          本文链接:https://www.haomeiwen.com/subject/hshhoktx.html