Javascript 带ui布线的角度布线布线

Javascript 带ui布线的角度布线布线,javascript,angularjs,angular-ui-router,Javascript,Angularjs,Angular Ui Router,另一个问题是:) 如果我在路由中将templateUrl留空,则范围是可查询的,但没有显示模板。但是,如果我像在链接的plunker项目中那样编写它,它会使链接变得不可链接:(但仅仅对于li>a元素……同样在plunker中,我也无法使其可行,不知道为什么……任何人? 这里是ap.js本身的帮助 (function(){ var portApp = angular.module('portApp', ['ui.router']); portApp.config(functio

另一个问题是:) 如果我在路由中将templateUrl留空,则范围是可查询的,但没有显示模板。但是,如果我像在链接的plunker项目中那样编写它,它会使链接变得不可链接:(但仅仅对于li>a元素……同样在plunker中,我也无法使其可行,不知道为什么……任何人?

这里是ap.js本身的帮助

(function(){
    var portApp = angular.module('portApp', ['ui.router']);

    portApp.config(function($stateProvider, $urlRouterProvider, $locationProvider) {
        $urlRouterProvider.otherwise('/home');
        $stateProvider
            .state('root', {
                url: '/home',
                abstract: true,
                templateUrl: 'views/listView.html',
                controller: 'ListController'
            })
            .state('home', {
                url: '/home',
                templateUrl: 'views/listView.html',
                controller: 'ListController'
            })
            .state('about', {
                url: '/about',
                templateUrl: 'views/resumeView.html'
            })
            .state('items', {
                url: '/items/:itemLink',
                templateUrl: 'views/itemView.html',    
                controller: 'ItemController'
            });
            $locationProvider.html5Mode(true);
    });

    portApp.factory("workFactory", function() {
        var works = [
        {
            Title: "Sprite",
            subTitle: "",
            Link: "sprite",
            Thumbnail: "img/portfolio02.png",
            Image: "img/ismont.png"
        },
        {
            Title: "Pepsi",
            subTitle: "Kristályvíz",
            Link: "pepsi",
            Thumbnail: "img/portfolio03.png",
            Image: "img/sanofimont.png"
        }
        ];
        return {
            list: function() {
                return works;
            },
            selected: function(detPath) {
                selected = works.filter(function(work) {
                    return work.Link == detPath;
                });
                return selected;
            }
        };
    });

    portApp.controller("ListController", ["$scope", "workFactory", 
        function($scope, workFactory) {
            $scope.allWorks = workFactory.list();
        }
    ]);

    portApp.controller("ItemController", ["$scope", "workFactory", "$stateParams",
        function($scope, workFactory, $stateParams) {
            var detPath = $stateParams.itemLink;
            //$scope.selectedWork = workFactory.selected(detPath);
            $scope.selectedWork = workFactory.selected(detPath)[0];
            alert($scope.selectedWork);
        }
    ]);

})();

我不完全确定你想用你的根状态做什么,所以我用我的方式使用它

$stateProvider
    .state('root', {
        abstract: true,
        template: '<div ui-view=""></div>',
        resolve: {
          somedata: function(){return {}}
        }
    })
    .state('home', {
        parent: 'root',
        url: '/home',
        templateUrl: 'listView.html',
        controller: 'ListController'
    })
    .state('about', {
      parent: 'root',
        url: '/about',
        templateUrl: 'resumeView.html'
    })
    .state('items', {
       parent: 'root',
        url: '/items/:itemLink',
        templateUrl: 'itemView.html',    
        controller: 'ItemController'
    });
$stateProvider
.state('根'{
摘要:没错,
模板:“”,
决心:{
somedata:function(){return{}
}
})
.州(“家”{
父项:'根',
url:“/home”,
templateUrl:'listView.html',
控制器:“ListController”
})
.state('about'{
父项:'根',
url:“/关于”,
templateUrl:'resumeView.html'
})
.说明('项目'{
父项:'根',
url:“/items/:itemLink”,
templateUrl:'itemView.html',
控制器:“ItemController”
});
正如我们所看到的,超级父级状态
'root'
没有定义url,它确实包含模板(所有子级都被注入到模板中)

另一方面,每个状态现在都将其父状态声明为“根”。这意味着,所有状态都可以访问解析或任何其他稍后应用于根的常见内容


如何影响所有状态的简单方法..希望这能有所帮助。也许可以查看此以了解更多详细信息:

是的,我使用“根目录”只是因为在页面加载时,ui sref active的其他方式对第一个菜单元素是错误的:(但我不知道是否有其他方法可以使其工作。仍然不确定您真正需要什么,但有一个更新的plunker,没有根。希望这有助于使用基本的ui路由设置,我可以使其工作,但我的问题是,现在它没有将我路由到我的itemView:(我想这是因为根状态,我写了根状态,因为我希望我的主状态在第一次页面加载后立即成为默认状态,并将其设置为活动菜单项。我的插件正在工作,什么对你不起作用?抱歉,不确定如何帮助。如果你能以不同的方式表述问题,我准备提供帮助……啊!我想到了out…我的index.html文件中缺少了base href标记…据我所知,只有在使用ngroute时才需要它。但由于我使用ui路由,所以使用它并不重要。为什么我们还需要使用它?目前还不清楚。