大家好,目前我用creator实现插件,插件功能为添加全局的组件到项目,实现是拷贝一个文件夹,但是拷贝完成以后cocos不能自动识别刷新资源目录,需要我关掉重新开才能看到新添加的组件,如果我们手工拷贝文件夹的时候,cocos能自动刷新资源目录,现在我希望实现这样一个功能,该用什么api来实现好呢?
你好,要通过插件代码将资源文件导入到资源目录,需要通过 Editor.assetdb.import 接口来处理。
单纯的拷贝文件,编辑器是不会刷新的。
关于 Editor.assetdb.import 接口的说明:
/**
* Import files outside asset-db to specific url folder.
* The import result will be sent through ipc message `asset-db:assets-created`
* @method import
* @param {array} rawfiles - Rawfile path list
* @param {string} destUrl - The url of dest folder
* @param {boolean} showProgress - Show progress or not
* @param {function} cb - The callbak function
* @example
* ```js
* Editor.assetdb.import( [
* '/file/to/import/01.png',
* '/file/to/import/02.png',
* '/file/to/import/03.png',
* ], 'db://assets/foobar' );
* ```
*/
import ( rawfiles, destUrl, showProgress, cb )
目前插件开发的相关文档还未完善。敬请谅解!
你好,我调用没有效果。不知道是不是1.4改过这个接口呢?我现在用的版本是1.3的
调用这块我确定是没有问题的,但是我在第三个参数传true进去,调用会报错,提示不是一个函数。但是还是没法拷贝进资源
这个接口是 page 层的。不能在 main process 中调用(插件的 main.js 就是 main process)
哦,那请问怎么调用呢,需要在ipc调用么?只能在panel的button中调用?
是不是可以通过Editor.Ipc.sendToDb()这样的方式在主进程中调用?