我正在使用TinyMCE编辑器管理我使用Angular 4构建的网站。
除非我将routerLink
属性添加到tinyMCE编辑器中的<a>
标记,routerLink
变为routerlink
(不是驼峰),否则一切正常。< / p>
这是我的tinyMCE初始化代码:
var editor_config = {
path_absolute : real_url,
selector: "#postTextArea",
valid_elements: '*[*]'
}
tinymce.init(editor_config);
我允许所有属性,但无法使routerLink工作。 TinyMCE总是将其更改为小写。
答案 0 :(得分:0)
问题是routerLink
无效HTML5 - HTML5中的属性都是小写的。
要了解我的意思,请在任何现代浏览器控制台中尝试:
document.body.innerHTML = '<span ID="x" myCustomAttr="x"></span>';
console.log(document.body.innerHTML);
......这会产生......
<span id="x" mycustomattr="x"></span>
TinyMCE只是简单地对浏览器在运行时执行的操作做了什么。 它希望始终创建有效的HTML。
Angular使用称为规范化的东西来处理浏览器和属性。你可以在这里阅读:
https://docs.angularjs.org/guide/directive/#normalization
你应该能够使用data-router-link
TinyMCE作为有效的HTML5。