質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Ionic

Ionicは、クロスプラットフォームに対応したモバイルアプリ開発のためのオープンソースUIフレームワークです。iOSやAndroid、Webのアプリケーションを1つのコードベースで開発できます。

Cordova

Cordovaは様々なデバイスで使うことができるオープンソースなモバイル用開発プラットフォームです。開発者に各デバイスの元のプラットフォームで開発する必要をなくし、HTML・JavaScript・CSSなどの一般的なウェブのテクノロジーを使ってすべてのデバイスで展開することができるモバイルのアプリケーションを生成することを可能にします。

AngularJS

AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

Q&A

解決済

2回答

622閲覧

【AngularJS】date型の変換

gucchi28

総合スコア29

Ionic

Ionicは、クロスプラットフォームに対応したモバイルアプリ開発のためのオープンソースUIフレームワークです。iOSやAndroid、Webのアプリケーションを1つのコードベースで開発できます。

Cordova

Cordovaは様々なデバイスで使うことができるオープンソースなモバイル用開発プラットフォームです。開発者に各デバイスの元のプラットフォームで開発する必要をなくし、HTML・JavaScript・CSSなどの一般的なウェブのテクノロジーを使ってすべてのデバイスで展開することができるモバイルのアプリケーションを生成することを可能にします。

AngularJS

AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

0グッド

0クリップ

投稿2018/01/25 11:12

開発環境

  • 開発環境:Cordova(7.1.0) + Ionic(3.19.0)
  • 対象:iPadアプリ

実現したいこと

2018-01-22T08:29:07.09のデータをHTML側で08:29と表示させたいです。
以下の方法を試しましたが、+9時間されてしまいうまく行きません。

  • {{2018-01-22T08:29:07.09 | date : 'HH:mm' : 'UTC'}}

17:29

  • {{2018-01-22T08:29:07.09 | date : 'HH:mm' : '+0000'}}

17:29

どのようにしたら、実現できるでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

やはりAngularJSの仕様で、現地時間に変換することになっているようですね。
別のアプローチで解決しましたので、解決方法を示します。

  • HTML側
{{convertDate(2018-01-22T08:29:07.09)}}
  • JavaScript側
convertDate(convertTime) { let tempDate = new Date(convertTime); return ('0' + tempDate.getUTCHours()).slice(-2) + ':' + ('0' + tempDate.getUTCMinutes()).slice(-2); }

投稿2018/01/28 05:18

gucchi28

総合スコア29

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ふつうにTimeZone指定しなければうまくいきませんか?

html

1{{'2018-01-22T08:29:07.09' | date : 'HH:mm'}}

投稿2018/01/26 02:32

h_daido

総合スコア824

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gucchi28

2018/01/26 04:13

h_daidoさん、回答ありがとうございます。 TimeZoneを指定しなくても、+9時間されてしまいます。。 `{{'2018-01-22T08:29:07.09' | date : 'HH:mm'}}`  ⇨`17:29` おそらく、[こちら](https://qiita.com/k_akakura/items/def354d8598d9208935f)を参考にConfig.xmlファイルでローカリゼーションの設定を日本にしているため、 デフォルトで日本時間(JST)になっているのだと思います。
h_daido

2018/01/26 04:52

あぁ、なるほど。。。そしたら {{2018-01-22T08:29:07.09 | date : 'HH:mm' : 'JST'}} もしくは {{2018-01-22T08:29:07.09 | date : 'HH:mm' : ''+0900'}} なんですかね。 本来的には、国際化対応なども考えると、 2018-01-22T08:29:07.09 自体を 2018-01-22T08:29:07.09+0900 とかtimezoneつきで返してもらうほうが良いとはおもいますが、たぶん無理なんですよね?
gucchi28

2018/01/28 05:20

h_daidoさん、ご回答ありがとうございました。 上に書いたような方法で解決しました! 確かに国際化対応を考えると、別対応が必要ですね。。 今後、検討させていただきます。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問