admin管理员组

文章数量:1322538

I am using UI-Router. Here's one of my state to which I am routing via ui-sref:

.state("munity", {
    url: "/munity/:munity_id",
    controller: "CommunityCtrl",
    templateUrl: "/static/templates/munity.html"
})

In one of my templates from where I go to 'munity' state:

<div ui-sref="munity({munity_id: munitymunity_id})"></div>

Here's my munity object:

{
    name: 'Community name',
    munity_id: 11 //int, not a string
}

As you can see the key 'munity_id' contains an int value rather than string value. However, when I access this parameter via $stateParams I get:

munity_id: "11" //string

Why am I getting a string?

I am using UI-Router. Here's one of my state to which I am routing via ui-sref:

.state("munity", {
    url: "/munity/:munity_id",
    controller: "CommunityCtrl",
    templateUrl: "/static/templates/munity.html"
})

In one of my templates from where I go to 'munity' state:

<div ui-sref="munity({munity_id: munity.munity_id})"></div>

Here's my munity object:

{
    name: 'Community name',
    munity_id: 11 //int, not a string
}

As you can see the key 'munity_id' contains an int value rather than string value. However, when I access this parameter via $stateParams I get:

munity_id: "11" //string

Why am I getting a string?

Share Improve this question edited Nov 12, 2015 at 14:01 Radim Köhler 124k48 gold badges242 silver badges340 bronze badges asked Nov 12, 2015 at 13:56 Tarun DugarTarun Dugar 8,9718 gold badges49 silver badges80 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 11

The easiest way to get munity_id as number (int) is to declare that param as int - {munity_id:int}

.state("munity", {
    url: "/munity/{munity_id:int}",
    controller: "CommunityCtrl",
    templateUrl: "/static/templates/munity.html"
})

Check the doc about .state() setting url:

A url fragment with optional parameters. When a state is navigated or transitioned to, the $stateParams service will be populated with any parameters that were passed.

(See UrlMatcher UrlMatcher} for more details on acceptable patterns )

examples:

url: "/home"
url: "/users/:userid"
url: "/books/{bookid:[a-zA-Z_-]}"
url: "/books/{categoryid:int}"
url: "/books/{publishername:string}/{categoryid:int}"
url: "/messages?before&after"
url: "/messages?{before:date}&{after:date}"
url: "/messages/:mailboxid?{before:date}&{after:date}"

本文标签: javascriptstateParams converting value to stringStack Overflow