如何在AngularJS中与ng-app共享范围变量

时间:2015-04-27 09:32:46

标签: javascript angularjs angularjs-scope angularjs-ng-model

我在同一页面上运行了两个不同的ng-app。

  1. bookingApp
  2. calendarApp
  3. 我想将所选日期范围变量从calendarApp共享到bookingApp。 我如何才能实现这一功能?

    谢谢, 角斗

2 个答案:

答案 0 :(得分:1)

你必须为此目的使用angularjs服务。希望以下实现可以帮助你理解

angular.module('app.A', [])
.service('ServiceA', function() {
    this.getValue = function() {
        return this.myValue;
    };

    this.setValue = function(newValue) {
        this.myValue = newValue;
    }
});

angular.module('app.B', ['app.A'])
.service('ServiceB', function(ServiceA) {
    this.getValue = function() {
        return ServiceA.getValue();
    };

    this.setValue = function() {
        ServiceA.setValue('New value');
    }
});

答案 1 :(得分:0)

您可以按Window postMessage和/或localStorage在Angular应用之间共享数据。

只需将 postMessave 包装到Angular Service中,然后在post事件中传播更改。