全局变量惹的祸

问题描述

《全局变量惹的祸》

获取当前激活学期课程时,出现这个错误,非常疑惑

原因

CourseService:

        // 获取当前激活学期的课程
        self.getActiveSemesterByCourse = function(callback) {
            $http.get('/Course/getActiveSemesterByCourse')
                .then(function success(response) {
                    if (callback) { callback(response.data) }
                }, function error(response) {
                    console.log('获取失败' + response);
                });
        }

Controller:

《全局变量惹的祸》

导航条:
《全局变量惹的祸》

无论在那个界面打印data都会出现以下结果:
《全局变量惹的祸》

分析:因为导航条的data定义了全局的,而程序执行时先执行,获得请求数据需要时间,所以报完错之后,请求的信息data覆盖了之前的,功能没有错但是会出现错误

解决办法

定义为局部的,添加scope{}

《全局变量惹的祸》

    原文作者:潘佳琦
    原文地址: https://segmentfault.com/a/1190000017116003
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞