我把雙引號去掉就報錯了。 不太明白,求大佬指點一下。
认证0级讲师
Vue 中,模板內 HTML 標籤 :xxx="" 時,雙引號中的內容是一個 JS 表達式,而不是一般的 HTML 屬性。
:xxx=""
舉例:
<p @click="count++">{{count}}</p>
這時候 count++ 是一段模板編譯後由 Vue 執行的 JS 程式碼,而不是簡單的屬性字串。同理,router-link 中書寫的也是 JS 程式碼,而不是連結字串。這樣一來,需要直接回傳字串路徑時,就必須採用單引號把字串內容括起來,例如 :to="'/index'" 這樣。如果寫 :to="/index",那麼 Vue 會求值一個名為 /index 的變量,而這顯然是非法的。
count++
router-link
:to="'/index'"
:to="/index"
/index
如果不想嵌套單雙引號,可以去掉冒號,寫
<router-link :to="'/dispatch/internal/treenode/'+itemSmall.view">{{ itemSmall.view }}</router-link>
你拼字串試試看
Vue 中,模板內 HTML 標籤
:xxx=""
時,雙引號中的內容是一個 JS 表達式,而不是一般的 HTML 屬性。舉例:
這時候
count++
是一段模板編譯後由 Vue 執行的 JS 程式碼,而不是簡單的屬性字串。同理,router-link
中書寫的也是 JS 程式碼,而不是連結字串。這樣一來,需要直接回傳字串路徑時,就必須採用單引號把字串內容括起來,例如:to="'/index'"
這樣。如果寫:to="/index"
,那麼 Vue 會求值一個名為/index
的變量,而這顯然是非法的。如果不想嵌套單雙引號,可以去掉冒號,寫
你拼字串試試看