Hallo, mein Problem ist, dass ich zwei Funktionen hinzufügen möchte und die Summe, die ich in ein anderes Array einfügen möchte. Benötige ich die Einnahmen als Array oder wenn ich es als Funktion zulasse, ist das in Ordnung? Ich dachte auch, dass es wegen dieser Schaltfläche besser wäre, die Nummer in der Funktion als Array zuzuweisen. Auch wenn ich versuche, es wie this.functionA+this.functionB auszudrücken, ist das Ergebnis ,. Grundsätzlich ist die ganze Idee, dass ich einen Umsatz für jeden Monat berechnen muss, also habe ich eine Schaltfläche hinzugefügt und Arrays erstellt, um die Ergebnisse zu analysieren und sie dann zu projizieren. Der Code von lautet wie folgt:

export default{
name: 'Home',
data(){
    return{
        FormData: {
            revenue:[
                {
                    lollipops:[
                        {
                            lolliSold:0,
                            pricePerLolli:0,
                        }
                    ],
                    chocolate:[
                        {
                            numchocoSold:0,
                            pricePerChoco:0,
                        }
                    ],
                    numa:0,
                    oprod:0
                }
            ] }}
computed: {
   lolliesSale(){
        let SaleArray=[];
        this.FormData.revenue.forEach((ItemL, indexL)=>{
            SaleArray[indexL]=ItemL.lollipops[0].lolliSold+ItemL.lollipops[0].pricePerLolli;
        });
        return SaleArray;
    },
    chocolateSale(){
        let choSaleArray=[];
        this.FormData.revenue.forEach((ItemC, indexC)=>{
            choSaleArray[indexC]=ItemC.chocolate[0].numchocoSold*ItemC.chocolate[0].pricePerChoco;
        });
        return choSaleArray;
    },
    numaSupport(){
        let numaSuppArray=[];
        this.FormData.revenue.forEach((ItemN, indexN)=>{
            numaSuppArray[indexN]=ItemN.numa;
        });
        return numaSuppArray;
    },
    revenue(){
    //return this.<anyfunction>; <- this is ok!!!!
    }

img of what i want with calculations

0
Antwnina 18 Apr. 2018 im 11:58

3 Antworten

Beste Antwort

Die von numa berechnete Funktion zum Erstellen eines Arrays, die nicht benötigt wird, da ich für jedes Jahr nur eine numa (= anderes Einkommen) habe. In Einnahmen, die ich auf die vorherigen Funktionen im entsprechenden Index verweise, zeigt der Index die Position des Arrays .

export default{
name: 'Home',
data(){
    return{
        FormData: {
            revenue:[
                {
                    lollipops:[
                        {
                            lolliSold:0,
                            pricePerLolli:0,
                        }
                    ],
                    chocolate:[
                        {
                            numchocoSold:0,
                            pricePerChoco:0,
                        }
                    ],
                    numa:0,
                    oprod:0
                }
            ] }}
computed: {
   lolliesSale(){
        let SaleArray=[];
        this.FormData.revenue.forEach((ItemL, indexL)=>{
            SaleArray[indexL]=ItemL.lollipops[0].lolliSold+ItemL.lollipops[0].pricePerLolli;
        });
        return SaleArray;
    },
    chocolateSale(){
        let choSaleArray=[];
        this.FormData.revenue.forEach((ItemC, indexC)=>{
            choSaleArray[indexC]=ItemC.chocolate[0].numchocoSold*ItemC.chocolate[0].pricePerChoco;
        });
        return choSaleArray;
    },
revenue(){
            let revenueArray=[];
            this.FormData.revenue.forEach((rItem, indexR)=>{
                revenueArray.push(this.lolliesSale[indexR] + this.chocolateSale[indexR] + this.FormData.revenue[indexR].numa);
           });
           return revenueArray;
         }
0
Antwnina 24 Apr. 2018 im 05:07

OK, erstellen Sie also ein Array. Monatliche Einnahmen: [] Drücken Sie am Ende eines jeden Monats totalRevenue in das Array und setzen Sie totalRevenue auf Null. Sie können dasselbe mit allen Artikeln tun, die Sie im Geschäft haben. Verwenden Sie dann ein v-für jeden Artikel in den monatlichen Einnahmen und zeigen Sie sie auf der Seite {{item}} an.

1
PWR 19 Apr. 2018 im 14:00

Ich bin mir nicht sicher, was Sie hier erreichen wollen.

Anscheinend möchten Sie den Gesamtumsatz verfolgen und wissen, wie viel von jedem Artikel verkauft wird. Ich verstehe nicht, warum Ihre Daten Arrays enthalten. Alles, was Sie brauchen, ist eine einzelne Variable für jedes der Dinge, die Sie verfolgen.

Data() { return { chocPrice: 5, lolliPrice: 5, otherPrice: 1, totalRevenue: 0, lolliSold: 0, chocSold: 0,

Erstellen Sie eine Schaltfläche, die eine Methode auslöst. <button v-on:click="buyChocolate">Buy Chocolate</button>

Wenn eine Schokolade / ein Lutscher verkauft wird, können Sie eine Methode auslösen, die Ihren Gesamtumsatz um den Preis dieses Artikels erhöht und die Anzahl der verkauften Schokolade / Lutscher erhöht

chocSold++, totalRevenue = totalRevenue+chocPrice.

Dann können Sie diese Elemente auf der Seite mit etwas wie {{total Revenue}} rendern.

0
PWR 18 Apr. 2018 im 22:00