我正在使用ui-router使用$stateParam从url获取参数值。参数之一是ID号,它可以以00开头也可以不以。例如,0034323343。在整个应用程序中,前导零保持不变。但是,在一个实例中,我正在向这样的对象添加状态:

SharedDataService.setBreadcrumb({
                state: 'notes({ claimID: ' + $stateParams.claimID + ', cardholderId: ' + $stateParams.cardholderId + ' })',
                name: 'Notes'
            });


由于某些原因,前导零被删除。该ID在URL中变为34323343。我检查了返回typeof($stateParams.cardholderId)string。那么,为什么零缺失呢?

这是保存的对象。

Object {state: "notes({ claimID: 187337, cardholderId: 0034323343 })", name: "Notes"}


设置此值时,我将其打印到控制台。看看状态如何具有cardholderId in正确的格式-前导零?现在,为什么当我在div中显示它时将其更改为int。 {{ crumb.state }} ??

最佳答案

您必须用"包围变量,以将其作为字符串保留在字符串化对象中。

'notes({ claimID: "' + $stateParams.claimID + '", cardholderId: "' + $stateParams.cardholderId + '" })'

08-19 09:59