使用离子框架改变全局函数的状态

Change state in global function with ionic framework

我正在尝试在 App.js 的全局函数中更改离子应用程序的状态。

这是函数:

function handleOpenURL(url) {...};

我正在使用 Cordova 的自定义 URL 方案插件。

我希望它根据来自

的url更改应用程序的状态

function handleOpenURL(url) {...};

有什么想法吗?

我是这样做的:

创建控制器:

.controller('URLController', function($scope, URLService){
    $scope.loadViaURL= function(url){
        URLService.openUrltemplate(url);
    } })

并将其添加到您的正文中 index.html:

<body ng-controller='URLController'>

控制器使用函数:来自 URL 服务的 openUrltemplate:

.factory('URLService', function($state){
    function openUrltemplate(url){   
           $state.go(YOURCODE);     
    }
    return({
         openUrltemplate:  openUrltemplate
    });   
})

最后在全局 handleOpenUrl() 函数中:

var body = document.getElementsByTagName("body")[0];
    var appLaunchedController = angular.element(body).scope();
    appLaunchedController.loadViaURL(url);

玩得开心:D