SAP Webide系列(1)- 修复代码区域录入汉字异常
创始人
2024-11-04 14:37:17

 一、背景

        SAP Webide个人版上次更新时间还停留在2018年。针对产品出现的bug和优化方面,官方应该也不会再维护了,因为SAP现在主推BTP(Business Technology Platform)里的BAS(Business Application Studio)开发工具以及VS Code安装Fiori Tools插件实现Fiori应用开发。

        虽然但是,SAP Webide在笔者看来依旧是一个不错的开发工具,特别是在刚接触SAP UI5开发时,此工具需配置的东西少,可离线开发,构建新项目迅速。

        SAP Webide有一个被众多国内Fiori开发顾问诟病的地方,就是针对汉字录入有问题,极其不友好。如下图是原版本的故障演示:

二、问题定位

        通过UI5 Inspector插件看到代码区域对应的控件是aceeditor,相当于封装的一个自定义控件,sap.watt.common.plugin.aceeditor.control.Editor。(对JS了解多的顾问可能根据名字就知道这个控件底层是做了什么,没错,就是基于开源库Web编辑器ace.js封装的一个代码编辑器。不了解也没关系,接着往下分析。)

        如果还不知道这个控件在Webide的哪个路径,可以接着测试,在初次进入右侧代码编辑窗口时,会加载aceeditor的CSS,在网络请求中能看到具体路径。

(/webide/resources/sap/watt/ideplatform/plugin/aceeditor/css/aceeditor.css)

        此时我们便可在自己电脑Webide解压路径找到Editor.js,和它在同目录下的lib文件夹里面也只有ace-noconflict。(无冲突的一个开源ace.js库)

        我们现在可以验证是不是这个库出问题了,毕竟Webide多年未维护,依赖库也没更新过。我们在ace-noconflict文件夹同路径建了一个testAce.html文件,直接引用这个库生成代码编辑器。

    测试Ace库   	
some text

        直接浏览器打开testAce.html,如下图为运行效果,发现果然是ace库出问题了。

三、解决步骤

        知道是库出问题了,我们可以去ace的官网或者github找最新可用的ace库,下面两个链接供参考学习。(笔者直接在ace官网打开供测试体验的在线编辑器,试了打中文没问题,就知道意味着成功就在眼前)

ace官网:https://ace.c9.io/

github的ace预打包版本库:https://github.com/ajaxorg/ace-builds/releases/tag/v1.5.0

        先将如下图lib文件夹中的ace-noconflict重命名成其它名字做备份,再将ace-builds-1.5.0.zip压缩包里的src-noconflict文件夹完整复制到截图lib路径并重命名为ace-noconflict。

四、效果展示

        在我们重启SAP Webide后,录入汉字已经正常了。终于是解决了一个折磨国内使用SAP Webide工具的Fiori开发顾问多年的一个烦心Bug。

👍点赞,您的支持是我创作的动力!

⭐️收藏,您的青睐是我前行的方向!

✏️评论,您的意见是我成长的财富!

相关内容

热门资讯

裸辞做“一人公司”,我后悔了 去年这个时候,一位以色列程序员正在东南亚旅行。他顺手把一个在脑子里转了很久的想法做成了产品,一个让任...
南京建成国内首个Pre-6G试... 4月21日,2026全球6G技术与产业生态大会在南京开幕。全息互动技术展台前,一名远在北京的工作人员...
超梵求职受邀参加“2025抖音... 超梵求职受邀参加“2025抖音巨量引擎成人教育行业生态大会”,探讨分享优质内容传播,服务万千学员。 ...
摩托罗拉Razr 2026(R... IT之家 4 月 22 日消息,摩托罗拉宣布新一代 Razr 折叠手机将于 4 月 29 日在美国发...
库克卸任,特纳斯领航:苹果新纪... 苹果首席执行官蒂姆·库克将卸任,硬件工程主管约翰·特纳斯将接任,苹果公司今天宣布此事。 库克将在夏季...