WXS (WeiXin Script) は、小規模なプログラム用のスクリプト言語です。WXS は JavaScript とは異なる言語であり、JavaScript と一致しない独自の構文を持っています。 wxs では使用できませんが、日常的に使用される JavaScript 関数が多数含まれています。最近、リストを作成しているときに、時間のフォーマット操作に携わりました。この問題が発生しました。以前作成した書式設定ツール関数がアプレットプロジェクトの wxs ファイルに直接コピーされ、関数を正常に実行できませんでした。これらには以下のエラーが含まれます
1. 日付までのタイムスタンプwxs で日付を処理するには、new Date() ではなく getDate(time) を使用する必要があります。 wxsファイル内 var フィルター = { フォーマット番号: 関数 (n) { n = n.toString() n[1] ? n : '0' + n を返す }, parseTime: 関数 (時間, タイプ) { if (time == null || type == '') { 戻る '' } (引数の長さ === 0)の場合{ nullを返す } var date = getDate(time); // wxs では、new Date() を使用して日付を処理することはできません。console.log("date", date); var y = date.getFullYear(); var m = filter.formatNumber(date.getMonth() + 1); var d = filter.formatNumber(date.getDate()); var h = filter.formatNumber(date.getHours()); var i = filter.formatNumber(date.getMinutes()); var s = filter.formatNumber(date.getSeconds()); var a = filter.formatNumber(date.getDay()); var time_str = ""; if (type == '月') { 時間_str = y + '-' + m; } そうでない場合 (type == 'date') { time_str = y + '-' + m + '-' + d; } そうでない場合 (type == 'datetime') { time_str = y + '-' + m + '-' + d + ' ' + h + ':' + i + ':' + s; } そうでない場合 (type == 'onlyMonth') { 時間の長さ } そうでない場合 (type == 'onlyYear') { タイムスタンプy } time_strを返す }, } モジュール.エクスポート = { パースタイム: filter.parseTime、 } wxmlでの使用 <wxs モジュール="フィルター" src="../../../filters/filter.wxs"></wxs> <text>{{filters.parseTime(time,'date')}}</text> 2. UTCを北京時間に変換するUTC 時間は北京時間より 8 時間遅れています。Apple の携帯電話では、時間を処理する前に「Z」を削除する必要があります。 var フィルター = { フォーマット番号: 関数 (n) { n = n.toString() n[1] ? n : '0' + n を返す }, parseTime: 関数 (時間, タイプ) { if (time == null || time == '') { 戻る '' } (引数の長さ === 0)の場合{ nullを返す } var 日付; if (typeof time === 'object') { 日付 = 時間 } それ以外 { if (('' + 時間).長さ === 10) { 時間 = parseInt(時間) * 1000 } それ以外 { time = time.replace("Z", " ").replace(getRegExp('-', 'g'), "/")//Z を削除します。Apple の携帯電話と互換性があります。var ts = time.split('T') var t1 = ts[0] var t2 = ts[1].split('.')[0] 時間 = t1 + " " + t2 time = getDate(time).getTime() + 8 * 3600000; // UTC 時間は北京時間と 8 時間異なります} date = getDate(time) //new Date() は使用できません } var y = date.getFullYear(); var m = filter.formatNumber(date.getMonth() + 1); var d = filter.formatNumber(date.getDate()); var h = filter.formatNumber(date.getHours()); var i = filter.formatNumber(date.getMinutes()); var s = filter.formatNumber(date.getSeconds()); var a = filter.formatNumber(date.getDay()); var time_str = ""; if (type == '月') { 時間_str = y + '-' + m; } そうでない場合 (type == 'date') { time_str = y + '-' + m + '-' + d; } そうでない場合 (type == 'datetime') { time_str = y + '-' + m + '-' + d + ' ' + h + ':' + i + ':' + s; } そうでない場合 (type == 'onlyMonth') { 時間の長さ } そうでない場合 (type == 'onlyYear') { タイムスタンプy } time_strを返す }, } モジュール.エクスポート = { パースタイム: filter.parseTime、 } WeChatアプレットwxsの日付と時刻処理の実装例に関するこの記事はこれで終わりです。より関連性の高いアプレットwxsの日付と時刻のコンテンツについては、123WORDPRESS.COMの以前の記事を検索するか、次の関連記事を引き続き閲覧してください。今後も123WORDPRESS.COMを応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Linux lsof コマンドの使用方法の詳細な説明
ドッカーの作成 バージョン: '2' サービス: fastdfsトラッカー: ホスト...
この記事の例では、PC上で写真アップロード機能を実現するためのVueの具体的なコードを参考までに共有...
目次1. ログ関連サービス2. システム内の共通ログファイル1. ログ関連サービスCentOS 6....
序文以前、ある会社の面接に行ったとき、面接官から「オブジェクトを深くコピーするにはどうすればよいです...
ビューポートとはモバイル ブラウザは、Web ページを仮想の「ウィンドウ」(ビューポート) に配置し...
問題:あるサーバー上の PHP プログラムは、localhost アドレス経由でデータベースに接続で...
この記事の例では、簡単な計算機を実装するための小さなプログラムの具体的なコードを参考までに共有してい...
最近、小さなプログラムの開発を勉強して見直しており、学習結果のいくつかをメモしています。公式の We...
目次1. SVGを使用する2. fontAwesomeを使用する3 ソース4 結論テクノロジースタッ...
目次Vue でのモデルバインド表示の if の v-text の説明v-html: v-オンv-if...
多くの場合、大規模および中規模の Web サイトでは、静的リソース (フォント ファイル、画像など)...
目次複数の変数を同時に宣言する場合は、1 行に短縮できます。分割代入は複数の変数に同時に値を割り当て...
mysql が閉じない場合の解決策:コンピュータのタスクバーを右クリックしてタスクマネージャーを開き...
1. はじめにresolv.conf は、さまざまなオペレーティング システムのドメイン ネーム シ...
Linux 仮想マシン: VMware + Ubuntu 16.04.4 Windows ネイティブ...