为啥我在编辑发票时看不到我的发票项目?

Posted

技术标签:

【中文标题】为啥我在编辑发票时看不到我的发票项目?【英文标题】:Why Can't I see My Invoice Items When I Edit My Invoice?为什么我在编辑发票时看不到我的发票项目? 【发布时间】:2019-03-30 14:00:12 【问题描述】:

我正在使用Laravel 5.7 & VueJs 2.5.* ...

我正在使用单个 Bootstrap 模型来创建和编辑我的 TicketInvoice 和它的 TicketInvocieItems,但是当我点击编辑时,Bootstrap 模型打开并且我看到数据填充有 TicketInvoice 但看不到TicketInvoiceItems的数据。 TicketInvoiceItems的数据我也不知道怎么填。

我的ticketInvoiceItems 输入字段:

<tbody>
  <tr v-for="(ticketInvoiceItem, key) in form.ticketInvoiceItems" :key="key">
    <!--Passenger Name-->
    <td>
      <input v-model="ticketInvoiceItem.passenger_name" size="40" type="text" name="passenger_name" class="table-control form-control" :class=" 'is-invalid': form.errors.has('passenger_name') ">
      <has-error :form="form" field="passenger_name"></has-error>
    </td>
    <!--Ticket No.-->
    <td>
      <input v-model="ticketInvoiceItem.ticket_no" size="24" type="text" name="ticket_no" class="table-control form-control" :class=" 'is-invalid': form.errors.has('ticket_no') ">
      <has-error :form="form" field="ticket_no"></has-error>
    </td>
  </tr>
  <!----------- ANY MANY OTHER FIELDS DOWN BELOW ----------->

我的html编辑按钮:

<a href="#" @click="editModel(ticketInvoice)">
  <i class="fas fa-user-edit fa-lg text-orange"></i>
</a>

我的VueJseditModel()代码:

<script>
  /*==============EDIT INVOICE CODE==============*/
  editModel(ticketInvoice) 
    this.editmode = true;
    this.form.reset();
    this.form.clear();
    $("#addNewTicketInvoice").modal("show");
    this.form.fill(ticketInvoice);
  ,
  /*==============END EDIT INVOICE CODE==============*/
  </script>

我的data()VueJs

<script>
  export default 
    data() 
      return 
        editmode: true,
        ticketInvoices: ,
        vendors: null,
        form: new Form(
          id: "",
          vendor_id: "",
          ticket_invoice_no: "",
          ticket_invoice_date: "",
          ticket_invoice_fares_total: "",
          ticket_invoice_grand_total: "",

          ticketInvoiceItems: [
            id: "",
            ticket_invoice_id: "",
            passenger_name: "",
            ticket_no: "",
            departure_date: "",
            fares: "",
            sub_total: 0
          ]
        )
      ;
    ,
    </script>

更好理解的图像

【问题讨论】:

【参考方案1】:

在您的 editModel 方法中添加以下行:

   $("#addNewTicketInvoice").modal("show");
   this.form.fill(ticketInvoice);
   this.form.ticketInvoiceItems=ticketInvoice.ticket_invoice_items;

this.form.ticketInvoiceItems 将是一个对象,用于循环遍历您应该使用的值

   Object.values(this.form.ticketInvoiceItems).forEach(....

【讨论】:

以上是关于为啥我在编辑发票时看不到我的发票项目?的主要内容,如果未能解决你的问题,请参考以下文章

我的电子发票为啥打印不了?

关于发票项目部署问题的解决

为啥我的电子发票打印不出来?

如何根据我的要求更改 sql 查询?

从网站自动创建包含客户详细信息的发票

Magento2 无法创建发票问题