vue中關(guān)于template報錯等問題的解決
template報錯
寫這個純粹是為了紀(jì)念有多蠢
template:` <div class='app'> ?? ?<button ref = 'btn'>我是按鈕1</button> ?? ?<subCom ref = 'subc'></subCom> </div> ?? ?`,
關(guān)于template里面寫的HTML,經(jīng)歷了報錯,控制臺反映字符串不齊,語法錯誤等一系列問題后,查遍了各種博客,在查看別的框架的源碼后,才發(fā)現(xiàn)語法沒有問題,js導(dǎo)入沒有問題,有問題的是
template里面,用的是``
就是數(shù)字1旁邊的`,不是單引號!?。?/strong>
就這個我嘗試查詢了一個多小時的bug。。。
vue報錯問題
The template root requires exactly one element
這段話的意思是:根模板必須有一個準(zhǔn)確的元素。
在vue組件中會使用template標(biāo)簽,在template中,還需要一個標(biāo)簽元素將其他標(biāo)簽元素包裹起來,因為template標(biāo)簽是不會被DOM解析,生成DOM元素的時候會被隱藏,而組件又必須只能有一個根節(jié)點。
//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>
這種最外層標(biāo)簽元素只能有一個的方式跟React中的組件用法一致。
React中render函數(shù)return組件的時候,最外層也必須只能有一個標(biāo)簽元素,將其他標(biāo)簽嚴(yán)肅包裹起來,否則會報錯。
//helloWorld.jsx render(){ ?? ?return( ?? ??? ?<div> ?? ??? ??? ?<h1>我是h1</h1> ?? ??? ??? ?<h1>我是h1</h1> ?? ??? ??? ?<h1>我是helloWorld</h1> ?? ? ??? ?</div> ?? ?) }
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
解決vue加scoped后就無法修改vant的UI組件的樣式問題
這篇文章主要介紹了解決vue加scoped后就無法修改vant的UI組件的樣式問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09vue 添加和編輯用同一個表單,el-form表單提交后清空表單數(shù)據(jù)操作
這篇文章主要介紹了vue 添加和編輯用同一個表單,el-form表單提交后清空表單數(shù)據(jù)操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-08-08Vue?ECharts實現(xiàn)機(jī)艙座位選擇展示功能代碼詳解
這篇文章主要介紹了Vue?ECharts實現(xiàn)機(jī)艙座位選擇展示,本文給大家分享一段簡短的代碼通過效果圖展示給大家介紹的非常明白,需要的朋友可以參考下2022-05-05element-ui tree結(jié)構(gòu)實現(xiàn)增刪改自定義功能代碼
這篇文章主要介紹了element-ui tree結(jié)構(gòu)實現(xiàn)增刪改自定義功能代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-08-08