【发布时间】:2019-09-12 12:26:10
【问题描述】:
我的问题与this 非常相似,但对我不起作用。我已经问过发帖的人,但没有得到回复,所以我走了。我基本上想从一个函数生成链接:
generator(linkFor, linkPath){
if (linkFor == 'msg'){
// now linkPath is something like 2/4
// and the route to read the message is message/view/2/4
return 'message/view/' + linkPath
}
}
并且 if 条件确实会继续。从我做的模板:
<a href="javascript:void(0)" [routerLink]="generator(data.type, data.source)">{{data.source_name}}</a>
现在正在生成链接但添加了():
message/view/(2/4)
因此,它无法找到。大括号是从哪里来的?
【问题讨论】:
-
data.source的值是什么? -
@porgo 在上面的条件下,例如,它将是“2/4”。它始终是一个字符串,并且取决于类型。有时它会是“4”,有时是“hello”,当然基于后端发送的 data.type
-
做一个
console.log在返回和发布之前检查linkPath 的实际值。 -
@Mic 我实际上已经这样做了,它给出了:message/view/3/45
标签: angular