angular - 使用ionic将点击功能绑定(bind)到innerhtml

标签 angular ionic-framework ionic2

我想使用[innerHtml]链接到其他 ionic 页面。

例如,我想使用 [innerHtml] 将以下代码传递给应用程序:

<a (click)="goto('10')">Ipsum</a>

我知道这行不通,因为安全问题。但是我还能如何使用 ionic 和 Angular 4 生成动态代码呢?

你能举例说明我有哪些选择吗?

这是一个黑客应用程序,我使用谷歌表格作为后端。

最佳答案

如果其他人也遇到同样的问题

您可以使用 [innerHTML] 运行 Angular 4 goto 函数

<a class="next-page" data-id="10">Ipsum</a>

然后调用attachNextPageListenerngAfterViewInit()

   private attachNextPageListener(){
    const pageElements=document.getElementsByClassName('next-page');
    if(pageElements && pageElements.length){
      for(let i=0; i<pageElements.length; i++){
        const goto=pageElements[i].getAttribute('data-id');
        pageElements[i].addEventListener('click',()=>{
          this.goto(goto);
          // run your angular code here with goto
        });
      }
    }
  }

最后为了允许数据ID,你可以用bypassSecurityTrustHtml创建一个管道或者像 Ondra 答案一样使用它。

关于angular - 使用ionic将点击功能绑定(bind)到innerhtml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47396352/

相关文章:

javascript - Angular:如何注入(inject)抽象服务的多个实例

angular - 如何将变量从 Express.js 传递到 Angular11 通用 SSR

javascript - Angular - 如何获取 JSON 对象的结果?

javascript - ionic ionic 导航按钮 ng-如果第一次加载不起作用

angular - 在提示警报 ionic-2 中选择时间

angular - 无法正确使用继承 Ionic 2

angular - 无法在服务器启动时重定向到延迟加载模块作为默认路由/URL

javascript - Ionic AngularFire 实时数据库 - 更改推送条目的默认 UID

javascript - 如何在 Ionic Lab 启动项目 “Sidemenu” 中设置主从 View ?

矩范围插件的 typescript 错误