プロジェクトでVue.jsを使用していますが、問題があります。どうすればv-for
のフィルタを動的にバインドできますか?ある時点で私は要素のidをvueメソッドに渡していますが、どうすればそれをv-for item in items | filterBy @{id} in 'id'
に入れることができますか?vue.jsでv-forを動的に設定する
私はちょうど 'v-for
'属性をJQuery 'attr
'で入れてみましたが、これはうまくいかないようです。私はここでVue.filter
またはvm.$set
を使用すべきだと思いますが、私はまだ何かを理解することはできません。
助けていただければ幸いです!
v-for item in items | filterBy id in 'id'
var vm = new Vue({
...
data:function() {
return {
id:1
}
}
}
はその後、テキストのような入力にv-model
を使用するか選択して、そこにIDを設定することができます:あなたは自分のv-for
属性に変数を使用することができます
var vm = new Vue({
...
methods: {
bindId: function(id) { //id is passed from html
var repeat = 'item in items | filterBy "' + id + '" in "id"';
$(#main).children('.collection').attr('v-for', repeat);
}
}
}
私はeach()関数を入れて、idsを比較して、$(this).removeを等しくなければならないようにしています。これはひどいですが、少なくとも動作します – Coffee
同じHTMLページまたは外部HTMLリソースからIDを取得していますか?あなたのマークアップは、同じhtmlの –
(でもhtmlではデータベースからロードされます) – Coffee