【问题标题】:Anchor link is not working from JSON string in ionic 3 and angular 4 : ur "<a (click)='openActionPage()'>terms and conditions</a>"锚链接在 ionic 3 和 angular 4 中无法使用 JSON 字符串:你的“<a (click)='openActionPage()'>terms and conditions</a>”
【发布时间】:2019-02-11 15:20:38
【问题描述】:

我在 JSON 文件中使用这个字符串。

为了继续,您需要同意我们的 “条款和条件”并添加以使用

在前端访问
<message *ngFor="let message of messages" [innerHTML]="message.content">    {{message.content}}</message>

但链接 openActionPage() 未在前端打开。

谁能建议我如何解决这个问题? 提前谢谢你

【问题讨论】:

  • 请考虑一个示例 stackblitz stackblitz.com/fork/ionic
  • 正在访问从 json 到 ionic Templete 的条款和条件链接,它不起作用
  • 我认为您会收到一些不安全网址的错误。如果您可以创建一个示例 stackblitz 项目来演示您的这个问题,那就很清楚了
  • @webnav。我已经更改了您问题中的一些格式;但是您可以拆分自己的消息,因此(如果可能)不需要水平滚动条。我不知道在哪里放置新线。你能在第一句话中重复你正在使用的这个字符串是什么吗?谢谢。您能等到审阅者接受我的更改后再提出我的请求吗?
  • 现在新品上线了,

标签: angular ionic3 angular4-forms


【解决方案1】:

所以你在这里尝试做的是动态添加一些 html 代码作为带有锚标记 (a) 的 innerHTML 和事件绑定到你的 ts 文件中的方法 - 这在 Angular 中不会像这样工作。

您认为您可以采用不同的方式处理此问题,但仍会显示“接受 T&C”按钮:

首先,从你的 json 中完全删除一个标签,只留下文本内容。 然后确保您有插值 ({{ }}) 或属性绑定。然后做这样的事情:

<message *ngFor="let message of messages" [innerHTML]="message.content"></message>
<button *ngIf="message.termsAndConditions?">Accept T&C</button>

这将需要在您的 json 文件中添加一个标志(如果它是 json),或者如果它是一个字符串,请执行以下操作:

<message *ngFor="let message of messages" [innerHTML]="message.content"></message>
<button *ngIf="message.content.match('terms and conditions')">Accept T&C</button>

根据您的实际上下文,可能有其他方法可以实现它,但总的来说,我认为在字符串内容中使用事件绑定来执行“innerHTML”方法并不是一个好主意。

【讨论】:

猜你喜欢
  • 2020-03-07
  • 2022-11-20
  • 2017-04-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-10
  • 2010-12-06
  • 2020-11-09
相关资源
最近更新 更多