【问题标题】:How do you use underscore js mixins within an angular module如何在 Angular 模块中使用下划线 js mixins
【发布时间】:2014-02-11 14:52:07
【问题描述】:

我有几个不同的角度模块将共享相同的方法。这些模块并不真正适合继承,但我想保持 DRY。因此我想使用混合模式。在我正在做的项目中,我们也在使用下划线 js。我正在尝试为我的 mixin 实例化一个角度模块,如下所示:

angular.module('my.module', [])
  .factory('myMixinFunction', function () {
    _.mixin({
      myMixinFunction: function (param) {
        // do something
        return;
      }
    });
  });

现在我的问题是,如何将这个 mixin 加载到另一个模块中?我想它看起来像这样 -

angular.module('some.other.module', ['my.module'])
  .factory('myOtherModule', function (myMixinFunction) {
      /// Other module code
  });

我知道我必须将 mixin 模块列为依赖项,但我在哪里实际执行扩展?理想情况下,我希望我的 mixin 能够访问“myOtherModule”中的元素。有人对此有什么建议吗?有没有一种“角度方式”来实现这一点?

【问题讨论】:

    标签: javascript angularjs underscore.js


    【解决方案1】:

    您可能希望将myMixinFunction 定义为服务,而不是使用下划线的_.mixin() 功能。请参阅:What is the difference between module.factory and module.service and how might both be applied?,注意服务/用法:“用法:可能对共享实用功能有用”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-04
      • 2019-05-15
      • 1970-01-01
      • 2018-05-08
      • 2019-10-04
      • 2016-12-07
      相关资源
      最近更新 更多