0

我有这支笔来证明我的问题。

https://codepen.io/sfyrious/pen/zWarZa

对我来说,vue-material 上的 1.0.0-beta-8 似乎坏了。

<div id="app">
  <md-table v-model="entries" md-card>
  <md-table-head>This table does not render.</md-table-head>
    <md-table-row slot="md-table-row" slot-scope="{ entry }" :key="entry.uid">
      <md-table-cell md-label="UID" md-sort-by="uid" md-numeric>{{ entry.uid }}</md-table-cell>
      <md-table-cell md-label="Name" md-sort-by="name">{{ entry.name }}</md-table-cell>
      <md-table-cell md-label="Alive?" md-sort-by="alive">{{ entry.alive }}</md-table-cell>
    </md-table-row> 
  </md-table> 
  <md-table md-card>
    <md-table-head>This table renders fine</md-table-head>
    <md-table-row v-for="entry in entries" :key="entry.uid">
      <md-table-cell md-label="UID">{{ entry.uid }}</md-table-cell>
      <md-table-cell md-label="Name">{{ entry.name }}</md-table-cell>
      <md-table-cell md-label="Alive?">{{ entry.alive }}</md-table-cell>
    </md-table-row> 
  </md-table> 
 </div>

-- 单独的js文件

Vue.use(VueMaterial.default)

var myapp = {
      name: "myApplication",
      data: function data() {
        return {
          entries: {
            0 : {
              "uid" : 1,
              "name" : "Bill",
              "alive" : true
            },
            1 : {
              "uid" : 2,
              "name" : "Bob",
              "alive" : true
            },
            2 : {
              "uid" : 3,
              "name" : "Sally",
             "alive" : false
            }
       }
     }
   }  
}

var app = new Vue(myapp)
app.$mount("#app")

第一个表根本不会渲染,但第二个表渲染得很好。任何想法?什么可能导致麻烦?我试图删除任何可能破坏它的东西。在这里的帮助将不胜感激。

4

1 回答 1

0

问题是“条目”应该是一个数组而不是一个对象。并且 slot-scope 必须是 { item }。

我被 vue-material 的优秀开发者纠正了!

于 2018-04-02T19:02:02.243 回答