最近需要做一个三维场景切换的功能,切换场景后,还可以进行二三维模式的切换,二三维切换时,要定位到当前场景视角,那么场景的视角参数信息就需要保存到状态数据中,以供二三维场景切换时使用。
项目是用vue做的,这里并没有使用vue的状态管理库,我是这样实现的:

  1. 定义状态数据sceneInfo
let sceneInfo;
  1. 定义get、set方法
function getSceneInfo() {
    return sceneInfo;
}

function setSceneInfo(value) {
    sceneInfo = value;
}
  1. 导出get、set方法
export { 其它方法..., getSceneInfo, setSceneInfo }
  1. 使用时引入get、set方法
import { getSceneInfo, setSceneInfo } from "@/views/three/js/index.js";
  1. 保存状态数据
setSceneInfo(sceneInfo);
  1. 读取状态数据
let sceneInfo = getSceneInfo();

通过以上方法,实现了三维场景切换后,切换二三维模式并定位的功能。您觉得这种方法如何?