はじめに
webpack で Moment.js の不要な Locale を除去する方法。
TL;DR
- 公式ドキュメントの手順通り
webpack.config.js
のplugins
に以下を追加new MomentLocalesPlugin({ localesToKeep: ["ja"] })
webpack で Moment.js の不要な Locale を除去する方法。
webpack.config.js
の plugins
に以下を追加new MomentLocalesPlugin({ localesToKeep: ["ja"] })
NativeScript でデバイスの輝度(明るさ)を制御する方法。
brightness.set({ intensity: <value> })
で輝度設定(0(暗) <-> 100(明))brightness.get()
で現在の輝度取得suspendEvent
などPage
や xxxxLayout
などの load
や unload
イベントモバイルアプリ(スマホアプリ)の強制アップデート(アップデートのお知らせ)に関して調べたり、検討したりしたので簡易的なメモを残しておく
強制アップデート(アップデートのお知らせ)とは、↓のようなアプリ起動時に「最新版があるよ」と通知するようなやつ。
NativeScript で入力範囲外エリアのタップでキーボードを非表示にする方法
dismissSoftInput()
を使うtns-core-modules/application/ios
を使って ios.nativeApp.sendActionToFromForEvent('resignFirstResponder', null, null, null)
ScrollView
あたりに tap
イベントのハンドラとして設定NativeScript(NativeScript-Vue) の ListView の表示を強制的に更新する方法。
シチュエーションとしては、「お知らせ一覧」のようなものがあって、詳細を確認したら未読アイコンが消える、というような状況。
「お知らせ詳細」から戻るボタンで ListView に戻ってきても、未読アイコンが消えずにかなりハマった。
なお、Android だと上記の問題は起きなかったため、主に iOS 向けの内容。
Page
の loaded
イベントなどにハンドラを設定ListView.refresh()
を実行する$refs
を使うと楽NativeScript(NativeScript-Vue) でプラットフォームごとにファイルやプロパティを切り替える方法。
チートシート
種別 | iOS | Android |
---|---|---|
View ファイル分割 | xx.ios.vue |
xx.android.vue |
View 内で分岐 | <ios></ios> |
<android></android> |
プロパティで分岐 | ios:prop |
android:prop |
スタイルシートファイル分岐 | xx.ios.(s)css |
xx.android.(s)css |
JS ファイル分岐 | xx.ios.js |
xx.android.js |
JS 内で分岐 | isIOS |
isAndroid |
ios
, android
をファイル名や、プロパティの prefix などに使うNativeScript(NativeScript-Vue) で ActionBar を非表示にする方法。
Page
の actionBarHidden
プロパティを true
に設定<Page actionBarHidden="true">