【发布时间】:2016-07-10 18:32:55
【问题描述】:
我有一个状态是我的应用程序的入口点。但是,入口页面需要一个日期参数才能显示列表。如果 URL 中未提供日期,则将其配置为使用当前日期。
从技术上讲,一切正常。默认值被传递给控制器,控制器可以使用它来加载一些数据,但它不会在 URL 中显示日期。
这是状态配置:
$stateProvider.state('openJobs', {
controller: 'openJobsCtrl as openJobs',
params: {
shippingDate: {
value: getFormattedCurrentDate(),
squash: false
}
},
templateUrl: 'openJobs.html',
url: '/openJobs/:shippingDate'
});
我创建了一个有效的plunkr 来演示该行为(在新窗口中运行以查看 URL 更改)。如果我创建指向openJobs 的ui-sref 链接,默认值将显示在URL 中。但是,如果有人通过输入http://host.com/openJobs/ 直接打开页面,则会在后台使用默认值,但不会显示在 URL 中。
如何实现,无论状态如何打开,URL中都会显示默认值?
【问题讨论】:
标签: angularjs angular-ui-router default-value