如何在angularjs中获取手动引导应用程序的名称?

时间:2016-08-23 15:17:01

标签: angularjs

我正在为我们公司开发一个角形组件。 它将被几个应用程序使用。 他们中的一些人正在使用棱角分明,其他人则没有。

因此,该组件应该能够在3种情况下运行:

  1. 当应用程序未使用angular
  2. 使用ng-app属性引导应用程序时
  3. 使用angular.bootstrap()
  4. 手动引导应用程序时

    我需要尽可能使用现有的角度应用。

    我已经解决了案例1和案例2,但在案例3中,我在检索现有应用程序的名称时遇到了问题。

    我可以使用哪个角度函数来获取手动启动的应用程序的名称?

    这就是我所拥有的(在打字稿中):

    var ngAppFound: boolean = true;
    
    function createOrGetApp(): ng.IModule {
        var appName: string = angular.element("[ng-app]").attr("ng-app");
        if (appName == undefined) {
            appName = "myApp";
            ngAppFound = false;
            return angular.module(appName, []);
        }
        return angular.module(appName);
    }
    
    createOrGetApp();
    
    $(function () {
        if (!ngAppFound) {
             // how to check whether already manually bootstrapped?
             // and how to retrieve the app name?
             angular.bootstrap(document, ["myApp"]);
        }
    });
    

0 个答案:

没有答案