sanitize raw html 內容裡的連結可以有 routerLink 效果

已知可以透過 sanitize + property binding 的方式把遠端的 raw html 內容呈現出來。

問題:
如果內容裡有連結元素(<a></a>)且連向本站,是否有辦法做到 routerLink 的效果而不是重新載入。

我目前所想要的是將取得的 raw html 動態建立成一個 component 在載入到畫面上
簡單來說,就是自己 compiler 整個過程

一旦當你決定使用這種方式時,你就不能使用 aot 了,因為 AOT 模式會將 compiler 拿掉,而動態 template 需要 compiler。

感謝,看了好幾個API都沒注意到這個。稍微閱讀了一下文章,確實滿像是我想要的效果,連寫法也幾乎一樣。

不能AOT的部分,在搜尋文章時有看過,這點可以理解,畢竟要即時編譯內容出來。這部分我想還是利大於弊,因為如果寫 Angular App 吃不到 routerLink 的效果,變成每次都要重新載入,反而失去了 SPA 的意義。

無論如何,感謝啦。

這個做法似乎也是 okey 的

3個讚

後來想想這個方法副作用似乎比較低,實作起來也不困難又不需要動到底層的API。(加事件回呼這種變動的作法居然沒想到,真的是無法跳脫框框思考。

Angular 可以有很多玩法,不一定只有 SPA 一種模式。多嘗試各種組合,會有意想不到的火花