使用常量作为角度的状态名称

时间:2015-08-11 15:58:00

标签: angularjs routes angular-ui-router

我们正在构建一个角度应用并使用ui路由器。

国家定义如下:

$stateProvider.state("home.newest", {});

但是我们必须使用任意字符串来转到这样的状态:

$state.go("home.newest", ...);

定义和使用常量的正确方法是什么,所以我们可以这样做?

$state.go(consts.STATE_HOME_NEWEST, ...);

我环顾四周,这似乎不常见。我错过了什么吗?

谢谢:)

1 个答案:

答案 0 :(得分:1)

您可以创建“常量文件”来执行此操作。创建此文件后,您必须将其注入所需的位置。

文件中包含您的州参考:

var app = angular.module("myApp", []);

app.constant("state", {
    STATE_HOME_NEWEST: "...."
    //What you want
});

然后,你必须像其他任何东西一样注入“状态”,你将能够通过以下方式检索数据:

state.STATE_HOME_NEWEST