从零吃透WebBuilder文件新增能力:FileSystem addFile新增文件与目录源码解析
一、概述
在 WebBuilder 低代码平台开发中,新建页面模块、新建文件夹、自定义菜单、配置快捷访问URL,全部依赖 FileSystem.addFile 底层方法。该方法不仅实现文件/目录创建,还自动处理模块配置、菜单排序、URL缓存、权限初始化,是平台资源创建的核心底层能力。
二、核心功能亮点
-
支持创建文件 / 文件夹两种类型资源
-
自动写入 index.json 菜单配置、图标、标题、隐藏属性
-
自动调整目录文件排序位置
-
支持自定义URL快捷访问地址
-
新建模块自动初始化默认权限
三、关键源码解析
1、文件/文件夹创建核心逻辑
file = new Wb.File(path, filename);
if (isFolder)
file.createFolder();
else
file.createFile();
根据入参 isFolder 自动判断创建目录或文件,统一文件对象实例化规则,保证平台资源格式统一。
2、自动更新目录排序配置
indexData = indexFile.object;
indexData.items ??= [];
items = indexData.items;
index = items.indexOf(relName);
if (index == -1)
index = items.length;
items.remove(filename);
items.insert(index, filename);
indexFile.object = indexData;
创建资源时自动读取上级目录 index.json 排序配置,支持指定位置插入,实现自定义菜单排序效果,无需手动修改配置文件。
3、快捷URL绑定逻辑
if (url) {
this.urlBuffer.put('/' + url, file.modulePath);
this.saveUrlFile();
}
支持为模块绑定自定义访问短链接,写入全局URL缓存文件,实现别名访问、快捷跳转能力。
四、业务场景落地
日常低代码开发中:新建业务模块、创建分类目录、配置菜单图标、自定义页面访问地址、自动赋权,全部由该方法底层驱动,是平台可视化资源创建的核心支撑。
浙公网安备 33010602011771号