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 コマンドの使用方法の詳細な説明
これを見た後、あなたにも手ができて、さまざまな美しい小さなしっぽを作れるようになることを保証します!...
背景: 開発プロセスでは、現在の月、現在の日、現在の時間、今後数日など、時間を判断条件としてデータを...
1. asキーワードはアサーションを示すTypescript では、アサーションを表現する方法が 2...
注意: 3 番目の方法は XSell でのみ使用され、finalsell では使用できません。方法1...
目次一般的なアップロードコンポーネントの開発以下の機能を実装する必要がありますカスタムテンプレートサ...
この記事は、4G メモリ システム用の MySQL 構成ファイル ソリューションです (主に Inn...
この記事の例では、JavaScriptでデジタル時計効果を実装するための具体的なコードを参考までに共...
目次1. リクエストを取得する: 2. 投稿リクエスト: 3. 拡張と補足Vue スキャフォールディ...
この記事では、MySQL 8.0.24のインストールチュートリアルを参考までに紹介します。具体的な内...
フォームを作成するときに、名前、携帯電話番号、出生地などの 2 つのフィールドを揃える状況に遭遇する...
序文プロジェクト要件: Dockeridea に Docker プラグインをインストールし、Dock...
[LeetCode] 181.従業員の収入が管理職よりも多い従業員テーブルには、マネージャーを含む...
1. 縦型テーブルと横型テーブル垂直テーブル: テーブル内のフィールドとフィールド値はキーと値の形式...
一般的な開発ニーズとして、要素の一部を必要になるまで折りたたんでおきたいことが挙げられます。 Boo...
jvm.options ファイルを elasticsearch 構成に追加し、スタック サイズを変更...