質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

TypeScript

TypeScriptは、マイクロソフトによって開発された フリーでオープンソースのプログラミング言語です。 TypeScriptは、JavaScriptの構文の拡張であるので、既存の JavaScriptのコードにわずかな修正を加えれば動作します。

Q&A

解決済

1回答

673閲覧

vue nuxt メソッドに引数を渡したい

cheche0830

総合スコア187

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

TypeScript

TypeScriptは、マイクロソフトによって開発された フリーでオープンソースのプログラミング言語です。 TypeScriptは、JavaScriptの構文の拡張であるので、既存の JavaScriptのコードにわずかな修正を加えれば動作します。

0グッド

0クリップ

投稿2021/06/02 04:49

<template> <ul> <li v-for="(tab, index) in templateSelectTab.tabs" :key="index" @click="tabClick(tab.templateCategory)" > <span> {{ tab.name }} </span> </li> </ul> </template> <script lang="ts"> //省略 @Component([]) export default class Test extends Vue { @Prop({ type: Object, required: true }) private tabClick (templateCategory: Cateogry) { this.Picked = templateCategory } }

もともとこういう構成のコードがありまして、うまく表示されているのですが、
(liタグが4つ生成される感じです)
こちらにクリックしたときにその行番号のクラス名をつけたかったので下記のようにしたのですが
うまくいきませんでした。。何が間違ってますでしょうか?

<template> <ul> <li :class="is_selected" v-for="(tab, index) in templateSelectTab.tabs" :key="index" :data="index" @click="tabClick(tab.templateCategory, index)" > <span> {{ tab.name }} </span> </li> </ul> </template> <script lang="ts"> //省略 @Component([]) export default class Test extends Vue { @Prop({ type: Object, required: true }) private tabClick (templateCategory: Cateogry, index: number) { this.Picked = templateCategory this.is_selected = index } }
  1. :data="index" の部分で、ちゃんとindex番号が取れてるか確認したのですが、ちゃんと

出力したソースにはdata="1"と連番が触れてるのでindexには番号が来ているのですが、
どうやら:

private tabClick (templateCategory: Cateogry, index: number) {

ここでうまく受け取れてない感じがします・・・

this.is_selected = index

ためしにここに"test"と静的な文言を挿入するとclickしたときにちゃんとclass名に
class="test"と挿入されます。

アドバイスお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

すいません、どうやら、引数はちゃんとわたっているようで、別の問題の様でした。いったん閉じまして、再度ご質問させていただきます。

投稿2021/06/02 06:18

cheche0830

総合スコア187

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問