v-forディレクティブを使うと、データに納められた複数の項目がページに要素として差し込めます。このときv-forにkeyを与えるのが、「スタイルガイド」に定められた「必須」のルールです(「キー付き v-for」)。 一意のkey特別属性とインデックス key特別属性は、要素に一意の値を与えます。:keyはv-bind:keyの省略構文です(「key」参照)。
ユーザデータの登録・編集ページ等、入力ページの更新時や意図しないページ遷移時に「入力内容が破棄されます」等のアラートを出したい。WindowEventHandlers.onbeforeunloadを使います。
利用規約などスクロールが必要なコンテンツをv-dialogに書くと、スクロール位置がリセットされない件に対応してみました(Vuetify v1.5対応) まずはこちらに対応したv-dialogを用意 https://scrapbox.io/gyarasu/Vuetify%E3%81%AEv-dialog%E5%86%85%E3%81%A7%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E4%BD%8D%E7%BD%AE%E3%82%92%E5%8F%96%E5%BE%97%E3%81%99%E3%82%8B dialogコンポーネントが開いた後に実行するメソッドなどに下記の方法でscrollTopを指定すればスクロール位置がリセットされます。 let i = document.getElementById('scroll-target') i.a
Vue.jsの学習メモ。 jsstudy.hatenablog.com Vue.jsの基本的なコードを見ると、「el」というプロパティーがあるけど、これって何なんだろう?と思いました。 var app = new Vue({ el: '#app', data: { message: 'Hello Vue.js!' } }) ↑この「el: '#app'」という部分ですね。 本ではサラッと説明されていて、いまいちピンと来なかったので、他の説明を調べてみました。 マウントする要素 まずは本書の説明です。 (p.43) オプションには使用するデータやメソッドを定義していきます。 var app = new Vue({ // (コンポーネントの)オプションをここに書く }) 基本的なオプションの構成 // 基本的なオプション構成(使用するデータやメソッド) var app = new Vue({
<script> ・・・ props: { // 複数の型の許容 propB: [String, Number] } ・・・ </script> 既存実装などでそもそも渡される型の指定がないけれど、どうも数値とみなされる値が渡されてるっぽい・・・というときに・・・ type に直接 String や Number を渡すのではなく、配列に格納すると どうも指定した型が許容されるようです。 <template lang="pug"> span {{ puroppu }} </template> <script> import Vue from 'vue'; export default Vue.extend({ props: { puroppu: { // 文字列、数字両方 type: [String, Number], // 数字のみ `type: Number` と同義 //type:
checkboxを並べて、それが3つほどで収まっている場合は、それだけでもいいでしょう。 しかし、ユーザーが自身で追加した項目など、何個出力されるか分からない場合があります。 ここではそんな時にあると便利な「すべて選択」を実装してみます。 実装デモ See the Pen Select All Checkbox by Vue.js - flow4 by Shoko Oyamada (@chcltn) on CodePen. 「すべて選択」の実装の流れ dataとv-forでリストを用意 すべて選択が押されたかのフラグを用意 すべて選択が押された時の動きを作成 個々のcheckboxをクリックした時の動きを作成 1.dataとv-forでリストを用意 dataにて、猫の名前を配列catsに入れておきます。 それを利用し、v-forでリストを作成します。 See the Pen Select
やりたいこと VueRouterで遷移するページで、一つ前のページのURLなどを取得して、 それに応じてページ内のパーツの表示非表示を切り替えたい。 beforeRouteEnterで取得しようとしたが・・・ 今回はあるComponentのみで、前のURLが必要だったので、VueRouterのナビゲーションガードのbeforeRouteEnterを使用してみました。 公式のドキュメント <template> <div> // 前のURLに応じてここの表示非表示を切り替えたい <div v-if="prevRoute.name =='hoge'"></div> </div> </template> <script> export default { data() { return { prevRoute: null, }; }, created() { }, beforeRouteEnter
こんな感じの綺麗なパンくずリストが作成できちゃいます! とても便利なのですが、一つ問題点が。 デフォルトの設定のままではリンクが a タグのままであり、Nuxt.jsを使っている時の nuxt-link が適用されません。 なので、Nuxt.jsを使っている恩恵に預かれません。 その時は、 Slotを用いてちょこっと設定をしてあげる必要があります。 今回はその書き方をご紹介します! サンプルデータ <template> <v-breadcrumbs :items="itemsData"> <template v-slot:item="props"> <v-breadcrumbs-item exact :disabled="props.item.disabled" :to="props.item.href" nuxt > {{ props.item.text }} </v-breadcrum
[Vue.js] なぜpropsのdefault値にObjectやArrayを指定する際にfactory関数にする必要があるのかJavaScriptVue.js
はじめに vuejsはとっつきやすく完成度の高いJSフレームワークだと思っていますし、日本語のドキュメントも充実しています、実際に下記の機能も全て公式ドキュメントに記載されている内容です。 しかしながら、実際にやりたいことと機能名の間に乖離があったりして、いざ使用する時に意外に実装方法などを見つけにくい場合も当然ながら存在するため、自分用に Vuejs のちょっと便利なコンポーネントの機能をメモっておきます。 お品書き 共通した親要素を使いまわしたい(スロット配信) パラメーターによって使用するコンポーネントを変えたい(動的コンポーネント) 複数のコンポーネントで、同じ処理を使いまわしたい(ミックスイン) 出力するタグを動的に指定したい 共通した親要素を使いまわしたい いわゆるラッパーコンポーネント、例えば10個のコンポーネントを作る必要があるとして、その全てが共通したヘッダやフッタを持っ
みなさんこんにちは プルダウンリストAを選択すると、プルダウンリストBが自動的に切り替わる... 例えば、部署を選んだら、その下の課が選択できるようになるみたいな、そんな連動するプルダウンリストを作りたくなったのです。 初めは、まあ、jQueryでいいかって思ったのですけど、コードがモコモコと増えていきまして、すごい汚い状態になったので、却下して、ふんわりとVue.jsで実装しようとしたのだけど、ググってもあまり出てこなかったので、とりあえずリファレンス見ながら実装してたら、普通に書けちゃったので、忘れないうちに記事にしちゃおうと。 あ、SPAの話じゃないっすよ、普通にMPAでの話っす。 あと、タグのPHPに不穏な空気を感じたりしないこと。 TL;DR MPAなので、データはグローバルにjsonでベタがき Vue.jsのデータバインディングの仕組みを使って、連動先のリストを切り替える 複数
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く