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 コマンドの使用方法の詳細な説明
CSSスタイルファイルで指定 #class td /*表のテキストを左右上下に揃えるように設定する*...
MySQL データベースの実行効率はプログラムの実行速度に大きな影響を与えます。データベースの効率的...
MySQL をインストールした後、初めてmysql -uroot -pを実行したときに、root パ...
MySQL 8.0.18 安定版 (GA) が昨日正式にリリースされ、Hash Join も期待通り...
どのような製品について言及したいですか?最近、ユーザーがマーケティングの変化をよりよく観察できるよう...
3次元縦棒グラフは、正面、右側、上部の3つの部分で構成されています。描画するときは、正面をグラフィッ...
問題の説明最近、ホストから次のカーネル情報が報告されました。 7月8日 10:47:42 cztes...
コードをコピーコードは次のとおりです。 wmode パラメータ:透過モード: z-indexを使用し...
MySQL 起動エラーWindows 10 に MySQL をインストールする前は、net star...
Linuxにunzipコマンドがない問題の解決策unzipコマンドを使用して.zipファイルを解凍す...
フロントエンド開発では、スクロールバーを非表示にしながらスクロールをサポートしなければならないという...
この記事では、vue+element-uiでヘッドナビゲーションバーコンポーネントを実装するための具...
HTML フォームは、名前、電子メール アドレス、場所、年齢などのユーザー情報を収集するためによく使...
1. vue-cli がプロジェクト パッケージを作成した後にページが空白になる問題の解決方法コマン...
目次序文:成し遂げる:要約:まず効果を見てみましょう: 序文:このアイデアは、Bilibili のア...