[過去ログ] TypeScript part2 [転載禁止]©2ch.net (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1
(2): 2015/04/30(木)18:37 ID:ynMflk1l(1) AAS
外部リンク:www.typescriptlang.org

TypeScript lets you write JavaScript the way you really want to.
TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
Any browser. Any host. Any OS. Open Source.

前スレ
2chスレ:tech
973: 2018/02/20(火)18:34 ID:KguAhC0Q(1) AAS
yarnのワークスペースを使用して、Create React AppとCreate React Native App (Expo) で共通のコードを共有する
外部リンク:taiyaq.com
を参考にしてcreate-react-app でtypescriptプロジェクトを作ったんだけど
ワークスペース内での型情報の共有がうまくいかない。
それぞれ単体では動くんだけど。既に試している人っている?
974
(1): 2018/02/26(月)16:47 ID:Y4Glcgpd(1/3) AAS
ブラウザで動く個人的なちょっとしたものしか作らなくて、
ライブラリはimportしないで自分でscriptタグで読み込んでるから、
@typesの定義だけ欲しいんだけど、今って中身のないstubばかりで
importしないと使えないんだけど、これってどうすればいいのでしょうか?

仕方なくファイルをルートにコピーして、意味がわからないまま
export as namespace hogehoge; みたいな文をくっつけたりして
何とか機能するようにしてるけど、非常に困ってます
975: 2018/02/26(月)17:28 ID:wXoocKSL(1) AAS
.d.tsファイルでインポートすればいいはず
976: 2018/02/26(月)19:51 ID:Y4Glcgpd(2/3) AAS
いろいろやってみたけど、なかなか上手くいかない。
tsc --listFilesってやると、定義自体は読み込めてるようなんだけど、
要するに、d.tsファイルがIsomorphic modules (UMD global)ってやつに対応した書き方になってなくて、
それに対応するためにexport as namespace hogehoge; が必要だったりするらしい
外部リンク[html]:www.typescriptlang.org
977: 2018/02/26(月)21:54 ID:0Cvn/PR2(1) AAS
>>974
ちょっと言ってることがわからないからこういうときは小さいサンプルでも作ってどっかにあげてみてくんない?
そしてそうやって小さくまとめてみると意外と自己解決したりするもんだ。
978
(1): 2018/02/26(月)23:16 ID:Y4Glcgpd(3/3) AAS
例えばmomentを使う場合、scriptタグでmoment.jsを読み込んでいれば、
自分のjsではconsole.log(moment().format("YYYYMMDD hh:mm:ss"))みたいに使えます。
そのjsをtypescriptで書こうとした場合、moment()の定義が必要になります。
そこで@types/momentをインストールするわけですが、@typesはオワコンらしく、
実際にはmoment自体のパッケージもインストールされて、その中の定義ファイルが
参照されるようになります。
しかし、自分が使おうとしているmoment()は、トップレベルのwindow.moment()なわけですが、
定義ファイルでは、そのことが考慮されていないために定義を見つけられないようです。
(エラーは出ますが、anyとしてコンパイルはされます。)
その定義を見つけらるようにするおまじないが、export as namespace moment;のようです。

結局は、モジュールシステムに合わせた定義ファイルの書き方を
理解している人が少ないのだと思います。
export hogehoge とか export default hogehoge とか export = hogehogeとか
わけわかりません。
979: 2018/02/27(火)01:53 ID:ZLoGDkNB(1/2) AAS
>>978
@typesは別にオワコンじゃない。
型定義を提供するのに2つのルートがあるってだけ。
momentは作者側で型定義を提供してくれてるってだけ。

ところで解決したってことでいいんだよね?
/// <reference path="./mytypes/moment.d.ts"/>
みたいな感じでカスタムしたd.tsを読めばいいだけだし。
980: 2018/02/27(火)01:59 ID:ZLoGDkNB(2/2) AAS
つーかUMD対応中みたいだね
外部リンク:github.com

ワークアラウンドとして

import * as _moment from 'moment';
export as namespace moment;
export = _moment;

というd.tsを作ってimportすればいい
981: 2018/02/27(火)12:44 ID:XDcEi9Sw(1/2) AAS
import使っちゃった意味ないんだけどね
vueみたいに複数のファイルに分けられちゃうと大幅に変えないといけないから
気軽にプルリクできない感じがする
だが自分でその場しのぎの対応してると、バージョン上げられた時に詰む
982: 2018/02/27(火)12:53 ID:XDcEi9Sw(2/2) AAS
勘違いしてた
import _moment from 'moment';
export as namespace moment;
export = _moment;
とか、
import _Vue from 'Vue';
export as namespace Vue;
export = _Vue;
みたいに書けばいいのか。
すごい。解決した
983
(1): 2018/03/01(木)22:44 ID:V7eofqS1(1) AAS
次スレカモン
984: 2018/03/12(月)23:33 ID:ZJVFDbUv(1) AAS
TSConf 2018
外部リンク:tsconf.io

初のカンファか
985: 2018/03/16(金)08:23 ID:K5Isy9NI(1) AAS
Announcing TypeScript 2.8 RC
外部リンク:blogs.msdn.microsoft.com
986
(1): 2018/03/16(金)14:11 ID:HcB/quXY(1) AAS
>>983
次スレのテンプレに入れたほうがいいものとかある?
987: 2018/03/17(土)00:42 ID:4Xu/HAYS(1) AAS
tsconfigのexcludeの項目を、compilerOptionsの中に書いてて、何でダメなんだろう悩んじゃった
設定はcompilerOptionsの中に書くものと思い込んでて、全然気付けなかった
988: 2018/03/17(土)21:01 ID:zUTKt+H5(1) AAS
>>986
リポジトリとかWikiとかWhat'sNewあたり?
あとは流れで
989: 2018/03/28(水)08:14 ID:3iq+90ex(1) AAS
Announcing TypeScript 2.8
外部リンク:blogs.msdn.microsoft.com
990
(1): 2018/04/02(月)17:52 ID:G4IZotVZ(1) AAS
俺のtypescriptが好きすぎる感情をどこにぶつけていいかわからない
991: 2018/04/02(月)18:53 ID:aSG3UjFJ(1) AAS
Qiitaでええやろ
992: 2018/04/03(火)10:37 ID:0rmSrban(1) AAS
>>990
俺も俺も!。qiitaでもいいしココでもいいよ!!
993: 2018/04/03(火)11:33 ID:R6gDm2yr(1) AAS
次スレよろ
994: 2018/04/05(木)19:58 ID:0c0qrJs0(1) AAS
スレ立てにぶつけることが決まったな
995: 2018/04/20(金)07:03 ID:yIya3QmH(1) AAS
どうしたん?人気あるわりにここ静かやん
996: 2018/04/20(金)09:50 ID:WJk0jxxj(1) AAS
続きはCMのあとで!
997: 2018/04/24(火)20:06 ID:TUZ43qB9(1) AAS
はよ次スレ
998: 2018/04/24(火)21:50 ID:BAt1Eldp(1) AAS
うむ
999: 2018/04/26(木)21:48 ID:mMDBzDaB(1) AAS

2chスレ:tech
1000: 2018/04/26(木)21:52 ID:vM7mL5EC(1) AAS
safariが次のIEと呼ばれているように、
Typescriptは次のcoffeescriptと言われているwww
1001
(1): 1001 ID:Thread(1/2) AAS
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 1092日 3時間 14分 38秒
1002
(1): 1002 ID:Thread(2/2) AAS
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。

───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
外部リンク:premium.5ch.net

▼ 浪人ログインはこちら ▼
外部リンク[php]:login.5ch.net
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.380s*