首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有办法为if条件设置优先级,而不是为下一行代码设置优先级?

有没有办法为if条件设置优先级,而不是为下一行代码设置优先级?
EN

Stack Overflow用户
提问于 2016-01-29 19:05:06
回答 1查看 57关注 0票数 0

我有一个应用程序接口数据,获取它,并使用AngularJS在网站上显示它。我只是尝试将api数据存储在本地存储中,而不是每次都从api获取数据。所以我这样写道:

代码语言:javascript
复制
       if($window.localStorage.cityApi){
            $scope.cities = JSON.parse($window.localStorage.cityApi);
        }
        AddCityService.init(function(city_response) {
            $scope.loading = false;
            $scope.cities = city_response.data;
            $scope.city = JSON.parse(JSON.stringify(getCity($stateParams._id)));
            $window.localStorage.cityApi = JSON.stringify($scope.cities);
        });

但问题是,它从api获取数据,而不是从本地存储。如果我注释从api获取响应的代码。它将从本地存储中获取数据。如果我还提到了api和本地,它将从api中获取数据。我已经检查过chrome开发工具了。我不能使用this.because的else条件,我有添加城市和显示添加的城市的页面。如果我添加一次城市,它将重定向到页面,以显示添加的城市。所以,现在如果我在这里使用else,它不会移动到else语句本身,因此它不会显示添加的城市。谁能告诉我有什么方法可以做到这一点。

EN

回答 1

Stack Overflow用户

发布于 2016-01-29 19:12:52

这里怎么可能不能使用else语句呢?

代码语言:javascript
复制
if($window.localStorage.cityApi){
    $scope.cities = JSON.parse($window.localStorage.cityApi);
}
else {
    AddCityService.init(function(city_response) {
        $scope.loading = false;
        $scope.cities = city_response.data;
        $scope.city = JSON.parse(JSON.stringify(getCity($stateParams._id)));
        $window.localStorage.cityApi = JSON.stringify($scope.cities);
});

这不管用吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35082918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档