ResPrefab.ts 712 B

1234567891011121314151617181920212223242526272829
  1. import { EResType, ResBaseAsset } from "./ResBaseAsset";
  2. const { ccclass, menu, disallowMultiple, requireComponent } = cc._decorator;
  3. /**
  4. * spine组件,自动管理资源的引用计数
  5. */
  6. @ccclass
  7. @disallowMultiple
  8. @menu('UI/ResPrefab')
  9. export default class ResPrefab extends ResBaseAsset<cc.Prefab> {
  10. protected readonly ResType: EResType = EResType.Prefab;
  11. /**
  12. * @param bundle
  13. * @param url
  14. * @returns
  15. */
  16. loadPrefab(bundle: string, url: string, cb?: (asset: cc.Prefab) => void) {
  17. this.loadAsset(bundle, url, cc.Prefab, (asset: cc.Prefab) => {
  18. if (asset) {
  19. cb && cb(asset);
  20. } else {
  21. console.warn(`加载 prefab 失败: ${bundle} ${url}`);
  22. cb && cb(null);
  23. }
  24. });
  25. }
  26. }