簡體   English   中英

JS功能(Ionic,AngularJS)后重定向到另一個HTML頁面-Cordova

[英]Redirect to another html page after JS function (Ionic, AngularJS) - Cordova

我正在使用Ionic和AngularJS在cordova工具中為Visual Studio構建一個Android應用程序。

我想在函數完成執行后重定向到另一個html頁面,但似乎無法正常工作。

繼承函數

  if (id == null || id == undefined) { contact.save(saveSuccess, saveError); } else { contact.save(upSuccess, upError); } function saveSuccess(newContact) { id = newContact.id; table.insert({ contactid: id, firstname: name.givenName, lastname: name.familyName, homephone: phoneNumbers[0].value, mobilephone: phoneNumbers[1].value, email: emails[0].value }); alert("Contact Saved."); window.location("#/managermenu"); } 

這是我的$ routProvider代碼。

 droidSync.config(function ($routeProvider) { $routeProvider .when('/', { templateUrl: 'app/pages/main.html', controller: 'mainController' }) .when('/addcontact', { templateUrl: 'app/pages/addcontact.html', controller: 'managerController' }) .when('/editcontact', { templateUrl: 'app/pages/editcontact.html', controller: 'managerController' }) .when('/deletecontact', { templateUrl: 'app/pages/deletecontact.html', controller: 'managerController' }) .when('/managermenu', { templateUrl: 'app/pages/managermenu.html', controller: 'managermenuController' }) .when('/settings', { templateUrl: 'app/pages/settings.html', controller: 'settingsController' }); }); 

我一般在angular和JS方面還很新,所以我不知道我在這里缺少什么...

嘗試$ state。 這有效嗎?

function saveSuccess(newContact, $state) {
        id = newContact.id;
        table.insert({ contactid: id, firstname: name.givenName, lastname: name.familyName, homephone: phoneNumbers[0].value, mobilephone: phoneNumbers[1].value, email: emails[0].value });
        alert("Contact Saved.");
        $state.go('/managermenu');
    }

也需要國家提供者

.config(function($stateProvider, $urlRouterProvider) {
  $stateProvider

  .state('managermenu', {
    url: '/managermenu',
      views: {
        'managermenu': {
          templateUrl: 'templates/managermenu.html',
          controller: 'ManagerMenuCtrl'
        }
      }
    });

});

代替$ state使用$ location。

function saveSuccess(newContact, $state) {
    id = newContact.id;
    table.insert({ contactid: id, firstname: name.givenName, lastname: name.familyName, homephone: phoneNumbers[0].value, mobilephone: phoneNumbers[1].value, email: emails[0].value });
    alert("Contact Saved.");
    $location.path('/managermenu'); 
}

路線提供者:

.config(function ($routeProvider) {
$routeProvider

 .when('/managermenu', {
    templateUrl: 'app/pages/managermenu.html',
    controller: 'managermenuController'
   }); 
});

除了$ state,您還可以使用$ location.path(“ / managermenu”);。 用於重定向到另一個狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM