我在angularJS的帮助下开发了一款cordova移动应用程序。在那,我添加了事件监听器' resume'当您登录应用程序时调用,无需注销即可从应用程序中显示,然后再次点击移动设备上的应用程序图标再次查看。
我的前视图是:
<!DOCTYPE html>
<html ng-app="iot">
<head>
<meta charset="utf-8">
<title>Data Cloud</title>
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">
<link href="css/ionic.min.css" rel="stylesheet">
<link href="css/style.css" rel="stylesheet">
<script src="js/app.js"></script>
......Application js are here.........
<script type="text/javascript">
function onLoad() {
document.addEventListener("resume", onResume, false);
}
</script>
</head>
<body onload="onLoad()" ng-controller="MainCtrl">
<script type="text/javascript">
function onResume() {
if (window.localStorage.getItem("userid") === null) {
alert('Hi');
}else{
alert('calling');
$scope.checkForUpdate();
}
}
</script>
<ion-nav-view animation="slide-left-right"></ion-nav-view>
...
我的checkForUpdate();
函数位于MainCtrl
内的控制器app.js
内,其js文件也包含在此页面中。
当我第一次打开应用程序时,它会被调用并显示来自if
部分功能onResume()
的警报,然后我登录并从应用程序中退出。下次当我点击应用程序时,它从我离开的地方开始并向我显示警报calling
但是下一部分没有执行我知道$ scope未定义在这里,因为相应的函数在我的{{ 1}}控制器在app.js文件中如何调用该函数?任何想法
提前感谢您的回复。
答案 0 :(得分:0)
请参阅此博客文章,了解如何使用Angular和Ionic,http://tripleneo.nl/resume-app-using-angularjs-ionic/
使用简历.run(function ($ionicPlatform, $state, $timeout) {
$ionicPlatform.ready(function () {
document.addEventListener("deviceReady", function () {
document.addEventListener("resume", function () {
$timeout(function () {
navigator.notification.confirm(
"\nYou are still tracking an activity. Do you want to view it?",
function () {},
"Information", ["YES", "NO"]
);
}, 0);
}, false);
});
});
})