Angular 1.5,ui-router +资源​​+组件,stateProvider无法找到组件

时间:2016-10-19 09:11:27

标签: angularjs angular-ui-router resources components

我的应用程序具有以下结构:

app/
   js/
     levels/
           level-create
           level-edit
           level-list/
                     level-list.template.html
                     levellist.component.js
           level-show/
                     level-show.template.html
                     levelshow.component.js
     levels.module.js

我也有基本的资源服务,我注入每个组件和路由文件:

    'use strict';
module.exports = angular
    .module('app.levels.route', [])
    .config(function($stateProvider) {
        $stateProvider.state({
            component: 'levellist',
            name: 'levelIndex',
            url: '/levels',
            template: '<levellist></levellist>'
        }).state({
            component: 'levelshow',
            name: 'levelShow',
            url: 'levels/:id',
            template: '<levelshow></levelshow>'
        });

    });
使用levellist组件都可以正常工作,但是通过levelshow它无法找到这个组件...而且我还注意到stateProvider组件的搜索引擎非常具体。 有levelshow.component.js

    'use strict';
var angular = require('angular');

module.exports = angular
    .module('app.levelsshow.component', ['ngMaterial'])
    .component('levelshow', {
        controller: LevelShowController,
        templateUrl: '/app/js/levels/components/level-show/level-show.template.html'
    });

LevelShowController.$inject = ['Level', '$scope', '$stateParams'];

function LevelShowController(Level, $scope, $stateParams) {
    $scope.levelShow = Level.get({ id: $stateParams.id });
}

1 个答案:

答案 0 :(得分:0)

是的,这个问题已经解决了。无需在$ stateProvider.state

中标记组件标记