我有一个angularjs应用程序。该应用程序应该是Android和iOS的混合移动应用程序。我在项目中有一个JavaScript文件,它不是任何模块的一部分。在该JavaScript文件中,我需要通过$ state或任何加载控制器的方法来调用相应的模板URL。
对于$ scope,我发现在angularjs项目之外有很多方法可以访问它,但在$ state中找不到相同的方法。
答案 0 :(得分:3)
我们可以使用java-script
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