2016-02-04 42 views
1

如何使用Vue.js將方法結果綁定到V模型?使用Vue.js綁定方法結果到V模型

例如:

<someTag v-model="method_name(data_attribute)"></someTag> 

我不能讓它出於某種原因。

謝謝。

+0

對此使用計算值。 – ceejayoz

+1

這不起作用,因爲我無法將參數傳遞給計算屬性,我希望使用我傳遞的屬性來評估模型。編輯:我會嘗試將東西分解成組件 – greenymaster69

+2

如果您可以發佈較少混淆的示例,也許我們可以提供更多幫助。我不清楚爲什麼你會這樣做。 – ceejayoz

回答

4

v-model表達式必須具有getset函數。對於大多數變量,這是非常簡單的,但你也可以使用一個計算的屬性來自己定義他們像這樣:

data:function(){ 
    return { value: 5 } 
}, 
computed: { 
    doubleValue: { 
     get(){ 
      //this function will determine what is displayed in the input 
      return this.value*2; 
     }, 
     set(newVal){ 
      //this function will run whenever the input changes 
      this.value = newVal/2; 
     } 
    } 
} 

然後你可以使用<input v-model="doubleValue"></input>

如果你只是想在標籤中顯示的方法結果,請使用<tag>{{method_name(data_attribute)}}</tag>

+0

@ greenymaster69你是否能夠正常工作? – Jeff