푸시

1
내가 Vue.js 2에서 계산 된 속성과에서 배열로 밀어 찾고 있어요

는, 뷰는 Laravel 내에서 사용하고 난 다음 무엇입니까 2 응답.푸시

createSelection : 다음 코드를 사용하고

"(평가시 오류)"실제로는 아무것도 안

<template> 
    <div> 
    <div>Credits carried through: {{ credits }}</div> 
    <div v-for="meal in meals"> 
     {{meal}} 
     <input :id="meal" :name="meal" v-model.number="creditsPerMeal[meal]" type="number"> 
    </div> 
    <div> 
     Credits used: {{creditsSum}}/{{credits}} 
    </div> 
    </div> 
</template> 

<script> 
    export default { 

    mounted() { 
     console.log('Component ready.'); 

     console.log(JSON.parse(this.f)); 

    }, 

    props: ['f','c'], 

    name: 'credits', 
    data: function() { 
    var meals = JSON.parse(this.f) 

    var creditsPerMeal = {} 
    for (var i = 0; i < meals.length; i++) { 
     creditsPerMeal[meals[i]] = 0 
    } 

    var createSelection = [] 


     return { 
     credits: this.c, 
     meals, 
     creditsPerMeal 
     } 
    }, 

    computed: { 
     creditsSum() { 
     return Object.values(this.creditsPerMeal).reduce((a, b) => a + b, 0) 
     }, 

     createSelection: function(){ 
     for (var i = 0; i < meals.length; i++) { 
      createSelection.push({ 
       food: meals[i], 
       quantity: creditsPerMeal[meals[i]] 
      }) 
      } 
     } 
    } 
    } 
</script> 

답변

2

계산 된 방법 뭔가를 반환해야하고, 단지 계산 무언가와 반환. 계산 된 메소드에는 전혀 리턴 값이 없습니다. 모든 먼저 방법에 푸시 논리를 이동 :

computed: { 
     creditsSum() { 
     return Object.values(this.creditsPerMeal).reduce((a, b) => a + b, 0) 
     }, 
    }, 
    methods: { 
     createSelection(){ 
      for (var i = 0; i < meals.length; i++) { 
       createSelection.push({ 
       food: meals[i], 
       quantity: creditsPerMeal[meals[i]] 
       }) 
      } 
     } 
    } 

또한 error during evaluation이 문제에 대한 설명하지 않고하지 뷰의 문제처럼 보이는, 더 자세한 오류를 제공 할 수있다? 그것은 단지 콘솔을 뷰의 개발 도구에 표시하지로 답장을 보내

+0

덕분에, 그래 그것은 뷰 오류입니다. 나는 당신의 코드를 제공 할 것이다. –

+0

그래서에서 것을, 지금 가장 좋은 방법은 그 작업을 수행하는 것이 무엇 메서드를 호출해야합니다 추가? 아마 볼까? –

+0

경우이 방법의 호출을해야합니까? 질문 코드에서'createSelection' 식별자 호출을 볼 수 없습니다. BTW 또한'data' 기능은 일부 작업을 수행 난 단지 DIC 돌아가 created' 후크 '에 변수 초기화를 할 권하고 매우 이상한 보인다. 또한'createSelection'배열은 데이터의 내부해야하고, 당신이 그것을 사용할 때 당신은'this.createSelection'처럼 reffer, 그리고 한 가지 더 갈까요 -이 방법을 가지고 NOOT 좋은 생각 (또는 계산 방법) 데이터 변수로 이름이 동일합니다. – user3479125