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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Pug

Pug(旧Jade)とは、HTMLを書くためのテンプレートエンジン。タグで囲む必要がないなど記述を省略できるため、HTMLの記述が簡単になります。ファイル分割も可能で、変数やループなど便利な機能も備わっています。

Nuxt.js

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

Vuetify.js

Vuetify.jsは、マテリアルデザインを基本とするVue.jsのCSSフレームワークです。多くのマテリアルデザインのコンポーネントを提供しており、あらゆるアプリケーションに対応可能。vue-cli用テンプレートがあり、簡単にページを作成できます。

TypeScript

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

Q&A

0回答

1375閲覧

Vuetify v-data-table内のv-text-fieldを使用するとリアクティブにならない

Hr_ppm

総合スコア10

Pug

Pug(旧Jade)とは、HTMLを書くためのテンプレートエンジン。タグで囲む必要がないなど記述を省略できるため、HTMLの記述が簡単になります。ファイル分割も可能で、変数やループなど便利な機能も備わっています。

Nuxt.js

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

Vuetify.js

Vuetify.jsは、マテリアルデザインを基本とするVue.jsのCSSフレームワークです。多くのマテリアルデザインのコンポーネントを提供しており、あらゆるアプリケーションに対応可能。vue-cli用テンプレートがあり、簡単にページを作成できます。

TypeScript

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

0グッド

0クリップ

投稿2021/06/09 07:37

前提・実現したいこと

v-data-tableで表示している項目を編集可能にし、編集されたデータを利用したい
できればcomputedを使って実現したい

発生している問題・エラーメッセージ

値を入力しても確認用の表示に反映されない

該当のソースコード

TypeScript

1<template lang="pug"> 2v-container 3 v-card 4 v-card-title 入力内容の確認 5 v-card-text {{inputList}} 6 v-card 7 v-card-title 必要数入力 8 v-data-table.frameFour.myDataTable( 9 :headers='[\ 10 {text:"必要数", value:"need", width:"7%"},\ 11 {text:"名前", value:"name", width:"10%"},\ 12 ]' 13 :items='inputList' 14 item-key="name" 15 hide-default-footer 16 ) 17 template(v-slot:item.need='{ item }') 18 v-text-field(v-model="item.need") 19</template> 20 21<script lang="ts"> 22import { cloneDeep } from 'lodash' 23import Vue from 'vue' 24 25export default Vue.extend({ 26 components: {}, 27 data() { 28 const weekList = [{ name: '金曜' }, { name: '土曜' }, { name: '日曜' }] 29 return { 30 weekList, 31 } 32 }, 33 computed: { 34 inputList(): any { 35 return cloneDeep(this.weekList).map((m) => { 36 m.need = 0 37 return m 38 }) 39 }, 40 }, 41 methods: {}, 42}) 43</script> 44

試したこと

解決には繋がっていませんが、動かしながら確認してみるとtemplate内のコード書き換えで入力がリアクティブになったりしますが、リロードすると再び連動しなくなります。
watchプロパティ、methodsを使えばおそらく入力の反映はうまくいくと思ってますが、まずはcomputedでどうにかできないかと思い質問させていただきました。
computedが適切でなければ、改めて他の方法を考えようと思っています。

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問