发现一个bug。插件的。

我用插件定义一个按钮,可以直接把一个文件夹下的内容(主要是一些文件夹,代码,prefab)都复制到当前项目的assets文件夹下。 文件是移动成功了,但是编辑器没有反应。也没有自动生成相应.meta文件。 我随便复制一个js文件。然后就报错了:TypeError: Cannot read property ‘insertItem’ of undefined 。
有没有一些手动刷新的办法啊?

如果要将某些资源导入到项目中,请使用 Editor.assetdb.import( rawfiles, destUrl, showProgress, cb ) 接口来导入,单纯的拷贝文件是不行的。

请注意,rawfiles 必须是数组(需要导入的文件)。destUrl 格式为 db://assets/path/to/import,并且 destUrl 必须已经存在。

不是很懂,rawfiles应该写的是路径吧? 文件夹(包括里面的内容)能否复制过去啊? showProgress cb 这两个我应该填写什么啊?
Editor 这个对象的资料在什么地方可以查看啊? 问一次,给一个api,然后追问几次才可以理解这个api的用处。效率好低啊。

目前并没有 Editor 相关接口的说明文档。我们会尽快补充的。

rawfiles 是需要导入的文件/文件夹路径。执行 import 操作内部会进行复制,不需要自己复制。showProgress 如果为 true 表示 资源管理器面板会显示 “加载中”。false 则不显示。cb 就是import完成后的回调函数。

不行,我的这部分代码是
var fun = function () {};
Editor.assetdb.import( arr, “db://assets”, true, fun);
但是错误是 Error: task callback must be a function
如果把 Editor.assetdb.import( arr, “db://assets”, true, fun); 这一句删除了,那么就没有报错了。

你用的复制接口叫什么?目前我也需要,但无文档不知从何查询,谢谢。

你是在 main process 使用 assetdb 啊。那不需要 showProgress 这个参数。也就是去掉第三个参数应该就可以了。

你说的复制是指将资源导入到 assets 中吗?如果是的话,就使用 assetdb.import 就好了。这个帖子的前面有介绍。

关于文档,目前还不完善,后续会逐步补充的。