$ state未定义。 jhipster版本4

时间:2017-02-22 13:35:29

标签: angularjs pagination jhipster

当我尝试在Jhipster生成的实体中使用分页栏更改页面时,会出现以下javascript错误: $ state未定义

我正在使用angularJS版本1评估 JHipster版本4.0.5 框架到clientFramework。所有实体均使用分页选项通过命令 jhipster:entity entity-name 生成。

问题在于 entitycontroller.js 生成的状态'控制器注入时缺少变量。 e.g。

 EntityController.$inject = ['Entity', 'ParseLinks', 'AlertService', 'paginationConstants','$state']

您可以在下一个版本中解决此问题吗?

1 个答案:

答案 0 :(得分:0)

您必须修改 _entity-management.controller.js

此文件位于以下目录中: 的 ../ node_modules /发电机-jhipster /发电机/实体/模板/客户端/ angularjs / SRC /主/ web应用/应用/实体/ _entity-management.controller.js

您需要在$ inject和函数代码上添加 $ state 变量。在这里,你有更改的jhipster 4.0.5版本代码:

(function() {
    'use strict';

    angular
        .module('<%=angularAppName%>')
        .controller('<%= entityAngularName %>Controller', <%= entityAngularName %>Controller);

    <%= entityAngularName %>Controller.$inject = [<% if (fieldsContainBlob) { %>'DataUtils', <% } %>'<%= entityClass %>'<% if (searchEngine == 'elasticsearch') { %>, '<%= entityClass %>Search'<% } %><% if (pagination != 'no') { %>, 'ParseLinks', 'AlertService', 'paginationConstants', '$state'<% } %> <%_ if (pagination == 'pager' || pagination == 'pagination'){ %>, 'pagingParams'<% } %>];

    function <%= entityAngularName %>Controller(<% if (fieldsContainBlob) { %>DataUtils, <% } %><%= entityClass %><% if (searchEngine == 'elasticsearch') { %>, <%= entityClass %>Search<% } %><% if (pagination != 'no') { %>, ParseLinks, AlertService, paginationConstants, $state<% } %> <%_ if (pagination == 'pager' || pagination == 'pagination'){ %>, pagingParams<% } %>) {

        var vm = this;

        <%_ if (pagination == 'pagination' || pagination == 'pager') { _%>
<%- include('pagination-template'); -%>
        <%_ } else if (pagination == 'infinite-scroll') { _%>
<%- include('infinite-scroll-template'); -%>
        <%_ } else { _%>
<%- include('no-pagination-template'); -%>
        <%_ } _%>
    }
})();

我希望它很有用。