【问题标题】:Combining Angular Services with NodeJS Modules将 Angular 服务与 NodeJS 模块相结合
【发布时间】:2015-07-09 18:14:51
【问题描述】:

假设我有一个用 Javascript 编写的库,可以在 MEAN 堆栈应用程序中使用。

我希望在 NodeJS 和 Angular 中都使用我的库。 为了保持惯用语,我希望库在节点内显示为模块,在 Angular 中显示为服务。

我能想到的唯一方法就是这样做:

var myLibrary = function(){
    var myLib = {};
    myLib.myFunc1 = function() {
        //Do some cool stuff
    };
    return myLib;        
};    

if (typeof module !== 'undefined') {
    module.exports = myLibrary();
} else{
    var app = angular.module('myApp.services', []);
    app.factory('myLibrary',myLibrary);
}

这可行,但它至少有两个明显的限制:

  • 命名空间被变量“myLibrary”污染
  • 如果在库中我想使用其他节点模块或 Angular 服务,那么我不能

我想知道是否有人知道更好的解决方案,或者我是否应该放弃使用 Angular 服务并使用允许客户端节点模块功能的库之一。

【问题讨论】:

    标签: javascript angularjs node.js mean-stack


    【解决方案1】:

    对此进行了一些搜索,这似乎是最好的解决方案:

    https://gist.github.com/sevcsik/9207267

    【讨论】:

      猜你喜欢
      • 2020-04-29
      • 2021-04-23
      • 2012-01-30
      • 1970-01-01
      • 2010-11-27
      • 2019-02-09
      • 2017-06-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多