Vue.js-Rechnungstransaktion, Projekt-Push-Eingabe
<p>Ich versuche, eine Rechnungstransaktion mit Vue.js durchzuführen. Meine Frage lautet: Der Benutzer möchte möglicherweise eine Beschreibung für ein Produkt schreiben oder einen Rabatt gewähren (auf Anfrage). Ich möchte, dass die angegebene Eingabe angezeigt wird, unabhängig davon, welches Element hinzugefügt werden soll. (Jede Zeile kann nur eine Beschreibung und einen Rabatt haben)</p>
<p>Daher auf Anfrage
Wenn Sie auf die Schaltfläche „Beschreibung, Rabatt und Rabattsatz“ klicken, wird die Eingabe für die entsprechenden Zeilen übernommen. </p>
<p>Vielen Dank für Ihre Hilfe. </p>
<p>jsfiddle
<pre class="brush:js;toolbar:false;">const app = new Vue({
el: „#app“,
Daten: {
Rechnungspositionen: [
{
Name: "",
Menge: 0,
Unit_price: 0,
Mehrwertsteuersatz: 18,
net_total: 0,
Beschreibung: '',
Rabattwert: 0,
discount_rate:'usd'
},
],
},
Methoden: {
addInvoice() {
this.invoiceItems.push({
Name: "",
Menge: 0,
Unit_price: 0,
Mehrwertsteuersatz: 18,
net_total: 0,
Beschreibung: '',
Rabattwert: 0,
discount_rate:'usd'
});
},
removeIncoiceItem(index) {
this.invoiceItems.splice(index, 1);
},
},
});</pre>
<pre class="brush:html;toolbar:false;"><link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.1/dist/css/bootstrap.min.css " rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.4.2/vue.js"></script>
<div id="app">
<section class="container">
<div class="row">
<table class="table">
<thead class="thead-dark">
<tr>
<th style="width:17%">Name</th>
<th style="width:14%">Stückpreis</th>
<th style="width:15%">Mehrwertsteuersatz</th>
<th style="width:20%">Aktion</th>
</tr>
</thead>
</table>
<div v-for="(item, index) in billItems" :key="index" style="margin-bottom: 10px">
<div class="row">
<div class="col-md-2">
<input type="text" v-model="item.name">
</div>
<div class="col-md-2">
<input type="text" v-model="item.unit_price">
</div>
<div class="col-md-2">
<input type="text" v-model="item.net_total">
</div>
<div class="col-md-5">
<button class="btn btn-primary btn-sm">添加描述</button>
<button class="btn btn-secondary btn-sm">添加折扣</button>
<button class="btn btn-warning btn-sm">添加折扣率</button>
<button class="btn btn-danger btn-sm" @click="removeIncoiceItem(index)">X</button>
</div>
<div class="row" style="margin-top:20px;">
<div class="col-md-2">
<input type="text" placeholder="描述">
</div>
<div class="col-md-2">
<button class="btn btn-danger btn-sm">删除描述</button>
</div>
<div class="col-md-3">
<div class="input-group">
<input type="text" placeholder="折扣值">
<select class="form-select-new">
<option value="dollar">美元</option>
<option value="percent">&</option>
</select>
</div>
</div>
<div class="col-md-1">
<button class="btn btn-danger btn-sm">删除折扣</button>
</div>
<div class="col-md-2">
<input type="text" placeholder="折扣率">
</div>
<div class="col-md-2">
<button class="btn btn-danger btn-sm">删除折扣率</button>
</div>
</div>
</div>
<hr>
</div>
<hr>
<div style="margin-top:10px">
<button class="btn btn-warning" @click="addInvoice()"> 添加项目</button>
</div>
</div>
</Abschnitt>
</div></pre>
</p>