vue中关于template报错等问题的解决
作者:伊丶二
这篇文章主要介绍了vue中关于template报错等问题的解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
template报错
写这个纯粹是为了纪念有多蠢
template:` <div class='app'> <button ref = 'btn'>我是按钮1</button> <subCom ref = 'subc'></subCom> </div> `,
关于template里面写的HTML,经历了报错,控制台反映字符串不齐,语法错误等一系列问题后,查遍了各种博客,在查看别的框架的源码后,才发现语法没有问题,js导入没有问题,有问题的是
template里面,用的是``
就是数字1旁边的`,不是单引号!!!
就这个我尝试查询了一个多小时的bug。。。
vue报错问题
The template root requires exactly one element
这段话的意思是:根模板必须有一个准确的元素。
在vue组件中会使用template标签,在template中,还需要一个标签元素将其他标签元素包裹起来,因为template标签是不会被DOM解析,生成DOM元素的时候会被隐藏,而组件又必须只能有一个根节点。
//helloWorld.vue //正确写法 <template> <div> <h1>我是h1</h1> <h1>我是h1</h1> <h1>我是helloWorld</h1> </div> </template> //错误写法,会报错。 <template> <h1>我是h1</h1> <h1>我是h1</h1> <h1>我是helloWorld</h1> </template>
这种最外层标签元素只能有一个的方式跟React中的组件用法一致。
React中render函数return组件的时候,最外层也必须只能有一个标签元素,将其他标签严肃包裹起来,否则会报错。
//helloWorld.jsx render(){ return( <div> <h1>我是h1</h1> <h1>我是h1</h1> <h1>我是helloWorld</h1> </div> ) }
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。