Camunda Embedded Form:Angular 1.2.16模块配置功能未触发,无法注入工厂或服务

时间:2017-01-09 13:30:34

标签: angularjs camunda

我第一次使用Camunda(v7.3.0),使用角度1.2.16。我遇到了一个问题,即在加载模块时主应用程序模块配置没有触发。例如:

angular.module('app', []).config(function () {
   console.log("inside app config");
})

加载Camunda表单时,不会触发上述模块配置功能。 index.html的示例

<html>
    <script src="/my-warfile-process-0.0.1-SNAPSHOT/forms/app.module.js"></script>
    <script src="/my-warfile-process-0.0.1-SNAPSHOT/forms/main.controller.js"></script>
<body>
    <form ng-app="app" role="form" name="MyCamProcess">

    </form>
</body>

当加载表单时,app模块似乎只是部分自举,如果这样做的话。 angular.module('app')在Chrome控制台中运行该命令时确实存在,但仍未触发应用配置。

我遇到的其他问题是,1)我只将控制器定义为单独的函数ex。

(function () {
   angular.module('app').controller("myController", MyController);

   var MyController = function ($scope) {
       /**
        * do controller stuff
        */
   };
})();

不确定这是否是角1.2.16的事情,我之前没有使用过这个版本。 2)我不能将服务或工厂注入控制器ex blow

(function () {
    angular.module('app').controller("myController", MyController);
    angular.module('app').factory("myFactory", MyFactory);

    var MyController = function ($scope, MyFactory) {
        /**
         * do controller stuff
         */
    };

    var MyFactory = function () {
        /**
         * do factory stuff
         */
    };
})();

上面给出的错误会引发注入控制器的依赖性错误。

另一个是camForm对象,似乎唯一的访问方法是在form标签中嵌入一个脚本标签,然后手动将对象扔到windows对象ex上。

<form ng-app="app" role="form" name="MyCamProcess">
    <script cam-script type="text/form-script">
        //add to window object
        window.camForm = camForm;

        //inject manually
        inject(function () {
            MyController(camForm);
        })
    </script>
</form>

不确定注入方法是否有效,但确实如此。对此有任何帮助将是最有帮助的:)

更新:

所以,我注意到控制器和服务/工厂正被添加到invokedQueue中,但实际上没有被调用:

enter image description here

如果您在上图中注意到,invokeQueue有4个元素,3个是控制器,1个是服务。如果你看一下控制器阵列的长度是0.不确定为什么会发生这种情况.......

0 个答案:

没有答案