我在使用 elment-ui 框架的導航組件時,直接粘貼復制了官網上 (http://element-ui.cn/#/zh-CN/component/menu)的例子不會出錯,但是當我將他們轉化為動態的時候,發現我點擊其中的一個子菜單,其他的也會跟着展開或者折疊,如下:
呃~ 看看代碼的確跟 index 有關,看了官網只知道它是一個唯一標識且默認值為空,殊不知還有這般影響,是我大意了,把 index 忽略沒有設置,導致所有的都為空,也就失去了唯一的價值了,直接貼上我寫對的代碼吧:
1 <template v-for="item in SideMenuItems"> 2 <el-submenu v-if="item.children!=''||item.children!=null" :key="item.id" :index="item.id"> 3 <template slot="title"> 4 <i :class="item.icon"></i> 5 <span>{{item.title}}</span> 6 </template> 7 <el-menu-item v-for="child in item.children" :key="child.id"> 8 <router-link to="child.url">{{child.title}}</router-link> 9 </el-menu-item> 10 </el-submenu> 11 <el-menu-item v-else :key="item.id"> 12 <i :class="item.icon"></i> 13 <span>{{item.title}}</span> 14 </el-menu-item> 15 </template>