从角度提供程序到控制器获取更新数据

时间:2015-03-12 03:51:06

标签: javascript angularjs

我创建了一个提供者。它从应用程序的配置中获取数据,并更新数组links。现在我想从控制器访问链接数组。但是当控制器调用提供者的$ get函数时,它只是第一次调用。当提供程序更新中的数据时,控制器中的数据不会更新。

这是提供者

    this.$get = function () {
        return self.links;
    };
    this.addLink = function (link) {
        self.links.push(link);
    }

在app的配置中调用addLink函数。以下是我访问控制器中的提供程序数据的方法:

var links = myProvider;

如何从提供商处获取更新数据?

1 个答案:

答案 0 :(得分:0)

如果我正确理解您的问题,$get中的provider应该是工厂,在您的代码中,它是一个值而不是工厂函数,因此它始终是相同的值。尝试将其包装在另一个函数中。

this.$get = function() {
    return function() { return self.links;}
}