2016-07-07 66 views
2

我在一個小項目中使用Vue和Brunch,今天我決定添加Vueify以使我的組件更加簡潔。模板始終是片段

但他們總是看到有片段實例,所以他們不呈現。

<template lang="pug"> 
    div.sticker-container.sticker-xs-container.nav-top-sticker-animate#btn-about(v-bind:href="link") 
     span.sticker.sticker-xs.sticker-dark 
      span.sticker-txt.sticker-xs-txt(v-html="locales.btns.open") 
     span.sticker.sticker-xs.sticker-over.sticker-over-xs.sticker-light(v-show="opened") 
     span.sticker-txt.sticker-xs-txt.sticker-light-txt(v-html="locales.btns.close") 
</template> 

<script> 
export default { 
    data(){ 
    return { 
     disabled: false, 
     link: '#' 
    } 
    } 
} 
</script> 

要使用Vueify我只是Vue的早午餐添加到我的項目,我把這個VUE組件是這樣的:

import bar from './foo/bar' 
Vue.component('sticker-bar', bar) 

所以,我做錯了嗎?

回答

1

嘗試在您的模板中添加一個環繞的div。像這樣:

<template> 
    <div> 
     <content></content> 
    </div> 
</template> 

大多數情況下,這將解決片段實例錯誤。

如需更詳細的信息:https://vuejs.org/guide/components.html#Fragment-Instance

我希望它能幫助!

+0

我的模板已經包含在一個div中,我需要另一個? :o – Awea

+0

9/10(滿分爲10)我通過在模板中放置div來放置我的內容,導致出現此錯誤。所以值得一試。 –

+0

你的例子是否完整,你有沒有遺漏任何東西?例如。根元素上的'v-for'或'v-if'也使它成爲片段實例,因爲沒有可靠的根元素。 否則,它看起來很好,所以爲了進一步分析,我們需要一個可以輕鬆再現此錯誤的示例。 –