electron 如何在类星体q表中显示子类中的值

4urapxun  于 2023-05-11  发布在  Electron
关注(0)|答案(1)|浏览(161)

我目前正在写一个基于类星体的电子应用程序。在我的typescript代码中,我有以下接口:

interface CharterParty {
  startDate: Date;
  endDate: Date;
  cargoType: string;
}

interface PortOperations {
  expectedArrival: Date;
  actualArrival: Date;
  expectedDeparture: Date;
  actualDeparture: Date;
}

interface Ship {
  name: string;
  status: string;
  charterParty: CharterParty;
  loadPortOperations: PortOperations;
  dischargePortOperations: PortOperations;
}

我想显示保存在发货列表中的数据:

const ships = ref<Ship[]>([
])

在Q表组件中。为此,我定义了以下列来测试它:

const columns = ref([
  {
    name: 'name',
    required: true,
    label: 'Name',
    field: 'name',
    sortable: true
  },
  {
    name: 'status',
    label: 'Status',
    field: 'status',
    sortable: true
  },
  {
    name: 'cargoType',
    label: 'Cargo Type',
    field: 'charterParty.cargoType',
    sortable: true
  },
  {
    name: 'startDate',
    label: 'Start Date',
    field: 'charterParty.startDate',
    sortable: true
  },
  {
    name: 'endDate',
    label: 'End Date',
    field: 'charterParty.endDate',
    sortable: true
  },
  {
    name: 'expectedArrival',
    label: 'Expected Arrival',
    field: 'loadPortOperations.expectedArrival',
    sortable: true
  },
  {
    name: 'actualArrival',
    label: 'Actual Arrival',
    field: 'loadPortOperations.actualArrival',
    sortable: true
  },
  {
    name: 'expectedDeparture',
    label: 'Expected Departure',
    field: 'dischargePortOperations.expectedDeparture',
    sortable: true
  },
  {
    name: 'actualDeparture',
    label: 'Actual Departure',
    field: 'dischargePortOperations.actualDeparture',
    sortable: true
  }
])

q表看起来像这样:

<div class="q-pa-md">
                <q-table :rows="ships" :columns="columns" row-key="name" flat bordered />
              </div>

现在我的问题是,我没有得到子对象CharterParty、DischargePortOperations和LoadPortOperations中列的显示数据。只有状态和名称中的数据才能正确显示。
我错过了什么?

yftpprvb

yftpprvb1#

由于我在这里没有太多的运气,但如果有人来这里,这里是从github上的dongwa为我解决的答案:
您可以尝试使用功能字段。示例:

const columns = ref([
 // ....,
  {
    name: 'actualDeparture',
    label: 'Actual Departure',
    field: (row)=>row.dischargePortOperations.actualDeparture,
    sortable: true
  }
])

来源:https://github.com/quasarframework/quasar/discussions/15810#discussioncomment-5859518

相关问题