我有一个 angularjs 应用程序。该应用程序应该是适用于 android 和 iOS 的混合移动应用程序。我在项目中有一个 JavaScript 文件,它不属于任何模块。在那个 JavaScript 文件中,我需要通过 $state 或任何也加载控制器的方法来调用相应的模板 URL。
对于 $scope,我发现了许多在 angularjs 项目之外访问它的方法,但对于 $state 却找不到相同的方法。
我有一个 angularjs 应用程序。该应用程序应该是适用于 android 和 iOS 的混合移动应用程序。我在项目中有一个 JavaScript 文件,它不属于任何模块。在那个 JavaScript 文件中,我需要通过 $state 或任何也加载控制器的方法来调用相应的模板 URL。
对于 $scope,我发现了许多在 angularjs 项目之外访问它的方法,但对于 $state 却找不到相同的方法。
我们可以使用java脚本
window.location.href //to change location
例如:假设现在我在https://www.google.co.in/
现在我想导航到https://news.google.co.in/
我们可以简单地写
window.location.href ="https://news.google.co.in/"
它将导航到该页面
现在在您的项目中,您可能已经像这样定义了路由
function routeConfig($stateProvider, $urlRouterProvider, $httpProvider) {
$stateProvider
.state('landing.home', {
url: '/home',
templateUrl: "app/components/homeFolder/home.html",
controller: 'homeController',
controllerAs: 'homec'
})
.state('landing.hometwo', {
url: '/home1',
templateUrl: "app/components/OnHand/Templates/OnHandhome.html",
controller: 'OnHandController',
controllerAs: 'Onhand'
})
})
现在,如果您在 angularjs 控制器中,您只需使用
$state.go('landing.home');// to navigate to your required location
但是,如果您不在 angularjs 模块中,您可以更改 window.location 以导航到所需页面
例如实现 ---$state.go('landing.home'); 你可以写
window.location.href ="https:complete url"
或其他
window.location.hash ="#/home1" //the url which is defined for that state