我正在尝试等待提供者在 ui-router 继续加载状态之前完成初始化。
每次您进入该状态时,相机都应该启用,并且每当它再次被禁用时。module.config
我将其放入提供程序中,因为它需要在以下级别可用:
.provider("Camera", function CameraProvider() {
function init() {
//async enableCamera
}
function exit() {
//disableCamera
}
function $get() {
return { init: init, exit: exit };
}
});
和状态:
var cam = DubCameraProvider.$get(); // this is a hack, but I don't know how to
$stateProvider
.state("CameraState", {
url: "/camera",
onEnter: cam.init,
onExit: cam.exit,
views: {
"view": {
// template: ...,
controller: "ControllerUsingCamera"
}
}
我尝试使用$q
创建承诺并使用resolve
等待,但在module.config
级别 $q 无法注入(或者我只是不知道如何?)。
我该如何解决这个问题?