LevelManager()

LevelManager层级管理器

new LevelManager()

层级管理器类,用于管理层级切换和过渡
Example
const manager = app.levelManager;

Members

current :THING.BaseObject

获取当前层级
Example
let app = THING.App.current;
let level = app.level;
let target = app.query('.Entity')[0];
level.change(target, {
  onComplete: function(){
		let ret = level.current == target;
		// @expect(ret == true);
	 }
});

isChanging :boolean

是否正在切换层级
Example
let app = THING.App.current;
let level = app.level;
let target = app.query('.Entity')[0];
level.change(target);
let ret = level.isChanging;
// @expect(ret == true);

prev :THING.BaseObject

获取上一层级
Example
let app = THING.App.current;
let level = app.level;
let prev = level.prev;
let target = app.query('.Entity')[0];
level.change(target, {
  onComplete: function(){
		let ret = level.prev == prev;
		// @expect(ret == true);
	 }
});

Methods

back(options)

回退到上一层级
Parameters:
Name Type Description
options LevelChangeOptions 层级切换参数
Example
let app = THING.App.current;
let level = app.level;
let target = app.query('.Entity')[0];
level.change(target, {
  onComplete: function(){
		let ret = level.current == target;
		// @expect(ret == true);
		level.back({
  		onComplete: function(){
				ret = level.current == target.parent;
				// @expect(ret == true)
  		}
		});
  }
});

change(object, options)

切换层级
Parameters:
Name Type Description
object THING.BaseObject 要切换到的层级对象
options LevelChangeOptions 层级切换的参数
Example
let app = THING.App.current;
let level = app.level;
let target = app.query('.Entity')[0];
level.change(target, {
  onComplete: function(){
		let ret = level.current == target;
		// @expect(ret == true);
  }
});

quit() → {Promise.<any>}

退出层级
Returns:
Promise.<any>
Example
let app = THING.App.current;
let level = app.level;
level.quit({
  onComplete: function(){
		let ret = level.current == null;
		// @expect(ret == true);
  }
});