- 无法在有状态组件根元素上使用v-for,因为它呈现多个元素

时间:2018-06-01 07:08:08

标签: javascript html vue.js

错误标题中的错误,我是vue.js的新手,我无法弄清楚

无法为我的生活调试这个,有人可以帮忙吗?

const app = new Vue({
    el: '#location-box',
    data: {
        locations: [
            {
                name: "Europe",
                desc: "Loren ipsum"
            },
            {
                name: "America",
                desc: "Loren ipsum"
            }
        ],
    },
})

我的HTML:

<div id="location-section">
    <div class="main-container">
        <div class="location-grid-container">
            <div id="info-box" class="outline">

            </div>
            <div>
            <div id="location-box" v-for="location in locations" class="outline">
            <h1>{{location.name}}</h1>
            </div>
        </div>
    </div>
</div>

1 个答案:

答案 0 :(得分:2)

您传递到el应用的new Vue选项的根元素必须是唯一的,并且仅用作占位符。

然后你可以在其子代上使用Vue指令。

所以在你的情况下你可以这样做:

<div id="location-section">
  <div class="main-container">
    <div class="location-grid-container">
      <div id="info-box" class="outline">
      </div>
      <div id="location-box"><!-- Root element for your Vue app -->
        <div v-for="location in locations" class="outline">
          <h1>{{location.name}}</h1>
        </div>
      </div>
    </div>
  </div>
new Vue({
  el: '#location-box',
  // etc.
});