gpt4 book ai didi

javascript - 单击按钮时 $state.go() 不会第一次调用 Controller

转载 作者:行者123 更新时间:2023-12-03 07:27:12 25 4
gpt4 key购买 nike

我是 Ionic Development 的新手,面临着一个相当奇怪的问题。

我有两个页面主页和保存模板页面,分别使用 HomeCtrl 和 SaveTemplateCtrl。

从我的保存模板页面重定向到主页。

问题是发生了保存按钮重定向的 onClick,但第一次没有调用主页 Controller 。 HomeCtrl 被连续调用的次数。

代码如下:

主页Ctrl:

.controller('HomeCtrl', function($scope, Template) {
alert("Within Home Controller");
})

保存模板Ctrl:

.controller('SaveTemplateCtrl ', function($scope) {

$scope.saveTemplate = function(template) {
//**Logic for Saving the Template
setTimeout(function() {
alert("Going to Home Controller");
$state.go('myapp.home');
},1200);
};

})

建议并帮助我解决这个问题。

提前致谢,:)

最佳答案

如果您的主页是默认页面,当您第一次进入主页时,HomeCtrl将被执行。但是,如果您没有禁用主页的缓存,当您从保存模板页面重定向到主页时,HomeCtrl 由于 ionic View 缓存机制,不会再次执行。为了性能,我们应该尽量不要禁用缓存。如果你需要在每次进入时执行一些函数,也许你可以将它们放在 $ionicView.beforeEnter 事件处理程序中:

    .controller('HomeCtrl', function($scope, Template) {
$scope.$on('$ionicView.beforeEnter', function(){
alert("Within Home Controller");
});
})

更多关于ionic view生命周期,请引用http://www.gajotres.net/understanding-ionic-view-lifecycle/ 。希望对你有帮助。问候。

关于javascript - 单击按钮时 $state.go() 不会第一次调用 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35955804/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com