2017-01-20 3 views
0

コンポーネントの特定のメソッドが呼び出されたときにコンポーネントテンプレートを更新したい。 resolve関数、Vue.compileレンダリングオプション、v-htmlバインディングオプション(ただし実際にはテンプレートをコンパイルする)と同じです。Vue.jsコンポーネントメソッドからテンプレートを更新する

コンポーネントメソッドからresolve関数を呼び出す方法はありますか。

これは可能ですか?Vue.jsでこれを行う必要がありますか?

答えて

0

コンポーネントのdata関数の戻りオブジェクトの変数soのように、更新する内容を定義します。 Vue.extendなど

のようにメソッドを定義し、メソッド内でthis.whateverYouNamedYourVariableを変更すると、データは関数でなければなりません。

そして、v-onまたはプログラムでメソッドを呼び出します。ここでは、v-onイベントバインディングへのリンクもあります。Vue docs

そしてwebpackを使った簡単な例です。

<template> 
    {{me}} 
    <button v-on:"changeMe">Click to change!</button> 
</template> 

<script> 
import 'vue' from 'vue'; 
export default { 
    name: 'VueEventBindDemo', 
    data: function() { 
     return { me: 'isMe'} 
    }, 
    methods: { 
     changeMe: function() { 
      this.me = "isYou"; 
     } 
    } 
} 
</script> 
+0

あなたの答えは、[コンパイル](https://vuejs.org/v2/api/#Vue-compile)fnのようにテンプレート全体を再レンダリングするにはどうすればよいですか。あなたの例では、v-onハンドラもvueによって適用されるでしょう。 – user1081577

+0

https://vuejs.org/v2/guide/components.htmlを読んで、それが役立つかどうかを確認してください。 –

+0

私はそれをしましたが、Vueはおそらく私がテンプレートで動的に読み込むのではなく、すべてのテンプレートに対して新しいコンポーネントを作ってほしいと思っています。おそらく私が望むものに近づくのは、これはhttp://jsfiddle.net/chrislandeza/syewmx4e/ですが、vue2で廃止されました – user1081577

関連する問題