onlyoffice 插件执行后如何将消息返回给页面进行处理返回消息

使用免费的onlyoffice,前端操作插件是困难的,但是虽然是困难的,也是可以解决的,猜想这块内容是收费部分给封装起来了,既然要用免费的,那就要自己实现。

使用方法docEditor.serviceCommand(cmd,param); 可以和插件通信,插件收到之后,可以根据指令去修改或者编辑文档内容,编辑之后,可以将结果再返回给前端js,js再处理后续的逻辑。

今天遇到的问题是,插件执行完之后如何再将消息返回。

首先前端要加监听:

window.addEventListener('message',function(e){
    console.log(e);
});

e里面有插件返回的所有信息。

插件的执行是这样的:


            if(data.data.type&&data.data.type=='aaa'){
				Asc.scope.text.flag='no';
				 window.Asc.plugin.callCommand(function(){
					//处理业务逻辑,就是编辑文档
					console.log(Asc.scope.text);
                    //要返回前端什么信息,都封装在这里面,返回,或者自己定义一个json返回
					return Asc.scope.text;
					
                },false,true,function(data) { 
                    //这个很重要,就是通过这个将返回的信息传给前面我们自己处理的业务逻辑 
                    globalThis.self.top.postMessage(data ,'*');
                });
				
				// window.Asc.plugin.aftrePostMessage(0, Asc.scope.text);           
            }

我只记录我出现的问题,原来将消息返回给前端是写在callCommand方法中的,现在遇到问题,方法中是无法传过去,所以改成了在回调方法中。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值