Как да зададете маршрутите на $routeProvider на AngularJS чрез json

Бих искал да задам пътищата, след като получа pathconfig от JSON обект, как мога да го направя? Така че уеб сървърът предоставя json обект, който съдържа пътя, шаблона, контролера, след него angular го задава като $routeProvider или може да е добре за мен, че след като routeProvider е зададен, той може да бъде модифициран, така че да получи json отговор какво ще добави към routeProvider това, което съдържа.


person user2695543    schedule 03.06.2015    source източник
comment
В случай, че можете да започнете да мислите за UI-Router, моля, проверете и неговото отложено URL изпълнение, което ни позволява да конфигурираме URL маршрутизиране във фазата .run(): stackoverflow.com/a/30455837/1679310, stackoverflow. com/q/30477922/1679310   -  person Radim Köhler    schedule 03.06.2015


Отговори (1)


Следва двоеточие ' : '

Например, приемете, че вашият json изглежда така:

"objects": [
    { "itemID": "121", "itemName": "Doe" },
    { "itemID": "122", "itemName": "Smith" },
    { "itemID": "123", "itemName": "Jones" }
]

във вашия .js файл:

$routeProvider.when('/item=:itemID', {     //FOLLOW BY A COLON RIGHT HERE
    templateUrl: 'itemOverview.html',      //change as you like
    controller: 'itemOverviewController'   //change as you like
});

В зависимост от това как получавате json и какво име сте дали на $scope, имената в ng-repeat трябва да зависят от вас.

Във вашия HTML връзката ви трябва да изглежда така:

<ul class="itemList">
    <li ng-repeat="object in objects">
        <!-- a '#' is required at the beginning of 'href='/bg for routeProvider -->
        <a href="/bg#/item={{object.itemID}}">{{object.ItemName}}</a>
    </li>
</ul>

С ng-repeat, angular ще се погрижи за списъка и връзката, която идва с него!

person Taiwei Tuan    schedule 03.06.2015