正斜杠在ui-router的“url”属性中引用了什么?

时间:2015-10-09 06:03:15

标签: javascript angularjs angular-ui-router

我正在将一些Angular和ui-router集成到我的初创公司网站中,我遇到了一个让ui-router和ui-view工作的问题。这会让人想知道/的url属性中.state指向的是什么。它是指向Angular应用程序的声明位置还是其他位置?基本上我会感谢任何有关如何解决我的问题的反馈。 (请参阅下面的“应用程序模块”代码中的“职业”状态以查看我所指的内容)

As you can see here, it's not currently working.

应用模块

var careersApp = angular.module("ultradiaCareers", ["ui.router", "services"]);

careersApp.config(function($stateProvider, $locationProvider){
$locationProvider.html5Mode({
    enabled: true,
    requireBase: false
});
$stateProvider
    .state('careers', {
        url: "/",
        templateUrl: "openings.html",
        controller: "CareersController"
    })
    .state('positions', {
        url: "/position/:id",
        templateUrl: "position.html",
        controller: "PositionsController"
    });
});

控制器

angular.module("ultradiaCareers")

.controller('CareersController', ["$scope", "GetOpenings", function ($scope, GetOpenings) {
    "use strict";

    GetOpenings.openings.then(function (positions) {
        $scope.openings = positions.data;
    });

}])

.controller('PositionsController', ["$scope", "$http", "$stateParams", "GetOpenings", function ($scope, $http, $stateParams, GetOpenings) {
    "use strict";

    GetOpenings.openings.then(function (positions) {
        $scope.openings = positions.data;
        $scope.positon = positions.data[GetOpenings.getPositionById($scope.openings, $stateParams.id)];
    });


}]);

索引HTML

<html>

<head></head>

<body ng-app="ultradiaCareers">

<div ui-view></div>

</body>

</html>

JSON服务

var careersServices = angular.module("services", [])

.factory("GetOpenings", ["$http", function ($http) {
    "use strict";

    var GetOpenings = this, i;

    GetOpenings.openings = $http.get("/careers/positions.json");

    return {

        openings: GetOpenings.openings,
        getPositionById: function (data, value) {
            for (i = 0; i < data.length; i++) {
                if (data[i].pid == value) {
                    return i;
                }
            }
        }
    };

}]);

0 个答案:

没有答案