Con*_*roß 4 html xml-namespaces vue.js vuejs2
例如,我在必须输出命名空间元素的环境中使用 Vue <foo:aside>。这些元素目前甚至没有被 Vue 以任何方式处理(将值绑定到属性,添加事件处理程序,没有类似的东西),它们只是存在于模板中。但是,它们可能包含必须处理的子项,并且我的包含 mustache 语法以显示变量等,因此v-pre将禁用它们,因此不是我的用例的解决方案。
一切正常,但控制台充斥着以下错误:
[Vue warn]: Unknown custom element: <foo:aside> - did you register the component correctly?
For recursive components, make sure to provide the "name" option.
Run Code Online (Sandbox Code Playgroud)
命名空间是通过在根元素上定义的xmlns:foo,但这对 Vue 没有任何影响。
有什么办法可以通过某种方式告诉 Vue 忽略命名空间元素或至少定义在普通 HTML 元素上应该允许哪些命名空间来防止这种情况发生?
感谢链接的可能重复(尽管我不同意它是重复的,因为它适用于整个命名空间并需要子元素工作)和 Silencesys 的评论,我最终得到了这个解决方案:
Vue.config.ignoredElements = [/^foo:/];
Run Code Online (Sandbox Code Playgroud)
从 Vue 2.5 开始,您可以对 使用正则表达式ignoredElements,这是忽略整个命名空间的完美方式,无需添加每个可能的标签名称,同时仍保留这些元素及其子元素的 Vue 功能。
| 归档时间: |
|
| 查看次数: |
1296 次 |
| 最近记录: |