[解決済み】Vue.jsでv-onにイベントと引数を渡す。
2022-04-05 02:53:44
質問
でパラメータを渡すと
v-on:input
ディレクティブを使用します。これを渡さない場合、メソッド内のイベントにアクセスできます。関数にパラメータを渡した場合でも、イベントにアクセスできる方法はありますか?私はvue-routerを使用していることに注意してください。
これはパラメータを渡さない場合です。イベントオブジェクトにアクセスすることができます。
HTML
<input type="number" v-on:input="addToCart" min="0" placeholder="0">
ジャバスクリプト
methods: {
addToCart: function (event) {
// I need to access the element by using event.target
console.log('In addToCart')
console.log(event.target)
}
}
これは、パラメータを渡すときです。イベントオブジェクトにアクセスできない。
HTML
<input type="number" v-on:input="addToCart(ticket.id)" min="0" placeholder="0">
ジャバスクリプト
methods: {
addToCart: function (id) {
// How can I access the element by using event
console.log('In addToCart')
console.log(id)
}
}
以下は、私が抱えている問題を再現するのに十分なコードのフィドルです。
https://jsfiddle.net/lookman/vdhwkrmq/
解決方法は?
渡されたデータだけでなく、イベントオブジェクトにもアクセスしたい場合は、イベントオブジェクトに
event
と
ticket.id
をパラメータとして指定します。
HTML
<input type="number" v-on:input="addToCart($event, ticket.id)" min="0" placeholder="0">
ジャバスクリプト
methods: {
addToCart: function (event, id) {
// use event here as well as id
console.log('In addToCart')
console.log(id)
}
}
動作中のフィドルをご覧ください。 https://jsfiddle.net/nee5nszL/
編集: vue-routerを使用した場合
vue-routerを使用している場合、以下のように
イベント
の中で
v-on:input
メソッドを以下のように変更します。
<input type="number" v-on:input="addToCart($event, num)" min="0" placeholder="0">
以下、作業中です。 フィドル .
関連
-
[解決済み] Vue.js Chrome DevtoolsがVue.jsを検出しないのはなぜですか?
-
_this.axios is not a functionの原因と解決方法
-
Vue.js学习的第一天
-
Vueプロジェクトのビルド共通設定ファイル、request.jsとvue.config.js
-
[解決済み] Vuex - 計算されたプロパティ "name "が割り当てられたが、セッターを持たない
-
[解決済み] Vue.js - ネストされたデータを適切に監視する方法
-
[解決済み] Vue.jsでグローバルフィルタを大量に追加する方法は?
-
[解決済み】TypeError: this.getOptions は関数ではありません。
-
[解決済み】@clickとv-on:clickの違い Vuejs
-
[解決済み] Vueプロジェクトにおけるviewsフォルダとcomponentsフォルダの違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Vue.js Chrome DevtoolsがVue.jsを検出しないのはなぜですか?
-
[解決済み] Vue.jsで12件中1~3件を表示させるには?
-
[解決済み] npm run dev」「npm run watch」はどのようなスクリプトですか?
-
[解決済み] プロジェクトのvue.jsのバージョンを確認する方法は?
-
[解決済み] Laravel Spark v4.0.9で「Vue packages version mismatch」エラーを修正するにはどうすればいいですか?
-
vue リクエストエラー Uncaught (プロミス内)
-
TypeError: undefinedはオブジェクトではありません('i18n._t'を評価中)。
-
Vueプロジェクトのビルド共通設定ファイル、request.jsとvue.config.js
-
フロントエンドインタビューの質問まとめ
-
[解決済み】@clickとv-on:clickの違い Vuejs