はじめに
Vue.js を kazupon/vue-i18n が動作しない問題の修正方法。
TL;DR
vue add i18nでプラグイン追加- 環境(バージョン組合せ?)によっては上手く動かないので
src/i18n.jsを修正messages[locale] = locales(key).default->messages[locale] = locales(key)
Vue.js を kazupon/vue-i18n が動作しない問題の修正方法。
vue add i18n でプラグイン追加src/i18n.js を修正messages[locale] = locales(key).default -> messages[locale] = locales(key)Cordova Android で iframe 内のリンクをシステムデフォルトブラウザで開く方法。
前置きなどは 親 Window で iframe からのデータ受信、イベント検出する方法 の「前置き」と同じ。
以下はとあるプロジェクトの要件など。
- Cordova で iOS/Android まとめて開発
- コンテンツ内部は先方が作成
- コンテンツ内に先方管理外のサイトへのリンクがある
- ガワはこちらで作成して、コンテンツを
iframeで読み込むiframe内のリンクをシステムデフォルトブラウザで開きたいiOS は問題なかった(意図通りに動作した)が、Android だけ上手く動かなかった。具体的には、リンクをタップすると
iframe内で開こうとするが、X-Frame-Options の設定によりnet::ERR_BLOCKED_BY_RESPONSEとなる、というもの。
iframe 側: postMessage でリンク先 URL を送信preventDefault で元イベント(リンク先を iframe 内で開こうとするアクション)を抑止created, beforeDestroy フックでイベントリスナを 追加/削除plotly/plotly.js で、ズームやパン(移動)と連動して Y軸の表示範囲を自動で調整(オートスケール)する方法
plotly_relayout イベントが発火.on('plotly_relayout', handler) でハンドラを設定relayout を実行Plotly.relayout() で plotly_relayout イベントが発火するので無限ループにならないように注意NativeScript(NativeScript-Vue) で davecoffin/nativescript-modal-datetimepicker で DatePicker/TimePicker を使用する方法
tns plugin add nativescript-modal-datetimepicker@x.y.zns plugin add nativescript-modal-datetimepickerimport, new して pickDate や pickTimeVue.js で Lottie を使ったアニメーションを表示する方法。
Vue.js 向けのライブラリとして以下があるがメンテが止まってるようなので、(いまでも問題なく使えるかもしれないが)本記事では airbnb/lottie-web を使う。
※Latest commit は 2020/09/28 時点の確認結果
npm i lottie-web でインストールlottie-web と JSON データを importlottie.loadAnimation を実行Chart.js (vue-chartjs) でツールチップの表示内容を変更する方法
tooltips.callbacks.xxxx で設定tooltips.callbacks.titletooltips.callbacks.labeltooltips.callbacks.footertooltips.backgroundColortooltips.titleFontColortooltips.bodyFontColortooltips.footerFontColortooltips.titleFontStyleVue で Ivorzk/vue-cli-plugin-app-config を使って、動作環境ごとのコンフィグを設定する方法。
(ユースケースとしては、リリースビルドで動かしたいけど一部設定は開発向けにしたい、など?)
npm i vue-cli-plugin-app-config でインストールapp.config.js を作成し、vue.config.js で pluginOptions に追加npm run serve --dev, npm run build --prod などで環境(コンフィグ)切り替え可能Chart.js(vue-chartjs) で凡例の一部を非表示にする方法。
例えば円グラフ(Doughnut, Pie)で、値が 0 のものを取り除く、など。
(※この例だと、そもそも datasets から除外するのが良いけど、他に良い例がパッと思いつかないので…)
options.legend.labels.filter で設定item.index や chart.datasets[n].data[item.index] を見て 表示/非表示 を決定return true で表示、return false で非表示apertureless/vue-chartjs でチャートの高さ(や幅、サイズ)を変更する方法
width や height を設定options.responsive や options.maintainAspectRatio も合わせて指定width や height を vw, vh で指定する方法もある