X



TypeScript part2 [転載禁止]©2ch.net
レス数が900を超えています。1000を超えると表示できなくなるよ。
0822デフォルトの名無しさん
垢版 |
2017/08/22(火) 22:13:44.37ID:/ptFhj0b
TSの環境の開発の旗振りって誰?
いつになったら開発環境が安定するの?

webの情報のほとんどが古くて使えない
0825デフォルトの名無しさん
垢版 |
2017/08/23(水) 13:23:34.59ID:YtvD4LeH
TypeScriptの実装じゃなくて環境の方だろ?
型定義ファイルもTypingsとか@typesとかいろいろ変遷してきたし
0826デフォルトの名無しさん
垢版 |
2017/08/23(水) 19:59:00.18ID:KTb6BBkr
TypeScript1.0が出たころ何冊も本が書かれたけど、その後どんどん進化するから誰も手を出さなくなったな。
0827デフォルトの名無しさん
垢版 |
2017/08/23(水) 20:36:30.14ID:CbozNT9/
進化に関係なく使う人が居て需要があれば本は出される
出されないってことは・・そういうことだ
0828デフォルトの名無しさん
垢版 |
2017/08/25(金) 02:06:21.27ID:+9ilYHDI
ジェネリクスで教えてほしいことがあるんですが
型がundefinedかそうでないかで処理分岐をしたいんですがどうすればいいでしょうか

https://goo.gl/L6wazS

上記のようなコードはジェネリクスだとPはコンパイル時に解決されるものだからダメですよね。
じゃあどうすればいいんでしょうか。
もちろん引数にpayload:P みたいなのがあればtypeGaurdが使えるんですけど、それがない場合は?
0829デフォルトの名無しさん
垢版 |
2017/08/25(金) 07:45:31.16ID:HjHZR7Zb
試してないけど、Pのローカル変数を置いてみるのは?
初期化できないとダメかな。
0831デフォルトの名無しさん
垢版 |
2017/08/25(金) 12:42:23.60ID:ai11peC4
型がundefinedって言うのは違うのでは?

変数がundefinedならわかるけど考え方の次元が違う気がする

Add<undefined>(item);ってありえないだろ
0835デフォルトの名無しさん
垢版 |
2017/08/27(日) 13:34:52.17ID:0P4eY3kj
>>829
だめでしたわ。やはり最終的に生成されるjsコードが型がないからなにもないところに型を定義するのは無理っぽい
ジェネリクスって使う側には幸せだけどライブラリを作ろうって思うとなかなか難しいす。

実は以下のコードが小さくて見やすいので改造できないか試しているんです。
https://github.com/aikoven/typescript-fsa/blob/master/src/index.ts

store.dispatch(someAction()) というように同期型のアクションを作るときはパラメータ引数無しで使えるんだけど
非同期アクションを使おうとした場合はパラメータ引数なしの表現ができないんですよ。

store.dispatch(someAsyncAction.started(undefined)) と書かなきゃけない。
ここのundefinedを省略する方法を探っていたんですよね。
0838デフォルトの名無しさん
垢版 |
2017/08/27(日) 14:17:00.38ID:iBnNI7N6
引数にPが含まれていない以上呼び出し時の型パラメータはハードコーディングしなきゃならんわけで、
それならOnlyH用の関数と分けてしまっても大して変わらんだろう。処理自体は共通化すればいいし。
0841デフォルトの名無しさん
垢版 |
2017/08/27(日) 17:42:23.47ID:0P4eY3kj
>>838
もちろんそれならできることは確認してますが、それだったら引数にundefined
許容したほうがいいかなーと。

ジェネリクスは知らないことが色々ありそうなんでもしかしたら解決方法があればと想ったんですが、、、、
typescriptの進化を待ちます、、、。

>>840
c++だとできるんですか。
どう書くのか知りたいです
0842デフォルトの名無しさん
垢版 |
2017/08/27(日) 21:19:13.07ID:wLayuApT
>>841
何というかC++のテンプレートは強力過ぎる
Boost::Spiritみたいにコンパイル時に構文解析器を生成するような変態的なことさえ可能
ただしコンパイル時間は死ぬ

ttps://ideone.com/6V11EP

C++っぽくないコードだけどとりあえず
0843デフォルトの名無しさん
垢版 |
2017/08/27(日) 21:38:06.45ID:0P4eY3kj
>>842
わ、わかんないです。c++昔使ったことがあるから分かるかと思ったら全然わからなかったという。
でも、ありがとうございました。
0844デフォルトの名無しさん
垢版 |
2017/08/28(月) 18:40:12.12ID:g1F8jR1j
import 'reflect-metadata';

function logType(target: any, key: string) {
var t = Reflect.getMetadata('design:type', target, key);
console.log(`${key} type: ${t.name}`);
}

class Demo {
@logType
public attr1: string;
}

Visual Studio 2017 で上記のビルドは問題ないのですが
実行すると、「exports は定義されていません」と出てしまいます。

tsconfig.json で
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
は指定しています。

何か足りないのでしょうか?
0845デフォルトの名無しさん
垢版 |
2017/08/28(月) 20:16:46.01ID:3Zs55+dM
>>844
実行環境が書いてないから正確にはわからんのだけど
chromeとかブラウザ環境のjsはモジュール管理機構が無いからwebpackとか使わないと直接は実行できない。
0846デフォルトの名無しさん
垢版 |
2017/08/30(水) 15:24:22.43ID:0nj0F5xg
初心者なんだけど質問いいだろうか?

JS使う必要ある→ES5以前気持ち悪い→ES6未対応多い
という流れでTypeScript勉強しようかと思ったんだけど、手元にある本が分かりやすいけど1.0対応なんだ
追加機能を順に追えば問題ないだろうと思ったんだけど、更新箇所が多岐にわたるためか結構面倒で
ある程度網羅してそうなのも1.0からは追ってなかったりして、少し悩んでる

バージョンごとの差分を丁寧にまとめてくれているサイトか、
最新に近いバージョンを網羅的に解説してるサイトを、差分を意識しながら読もうかと思ってるんだけど、
慣れてる者の視点で、なんかいいサイト or 書籍があったら教えてくれないか?
0848デフォルトの名無しさん
垢版 |
2017/08/30(水) 17:14:44.50ID:0nj0F5xg
>>847
ありがとう
公式サイトのドキュメントは「英語でこれだけ読むのはだるい」と回避しちゃってたけど、
確かに差分把握程度なら英語苦手でもなんとかなりそうだし、どうしても分からなければそこだけ別途調べればいいかな……
0849デフォルトの名無しさん
垢版 |
2017/08/30(水) 17:16:57.33ID:0nj0F5xg
>>847
なんか完璧ボケたレスした、すまない
読んで公式確認して〜してる間に2行目が頭から抜け落ちてた

日本語訳あるなら探してみるわ
0850デフォルトの名無しさん
垢版 |
2017/08/30(水) 17:22:11.52ID:t7ExSs7Y
>>846
その用途ならbabel使え
型が欲しい人が使うのがTS
0851デフォルトの名無しさん
垢版 |
2017/08/30(水) 19:16:11.64ID:2eRd6qUC
俺的には初心者こそTypeScriptってカンジがするけどね。
書いてる最中にエラーが出るから曖昧な知識を補填してくれる。
基本的にはES2015 + 型 だからESの仕様を勉強してればそれがTypeScriptとほぼ一致する。
0852デフォルトの名無しさん
垢版 |
2017/08/30(水) 23:22:37.02ID:0nj0F5xg
>>850
型がある方が楽なんで問題ありません。ありがとうございます。
普段よく使うのが C#, Ruby なんで CoffeeScript も見た目や好きなんですけど……。
0853デフォルトの名無しさん
垢版 |
2017/08/31(木) 10:22:17.60ID:J0kol7QQ
俺はもうTSだけのトランスパイルで落ち着いちゃったんだけどBabel通すメリットある?
Symbolない環境でもArrayLikeをfor-ofできるならBabel使うけどそうでもなさそうだし
わざわざビルドを複雑にする理由がない
0858デフォルトの名無しさん
垢版 |
2017/09/01(金) 18:55:40.04ID:/s9HCfxW
やることなくなったんならcommunityに丸投げした大量のバグ修正しろやって感じ
0859デフォルトの名無しさん
垢版 |
2017/09/02(土) 17:49:25.16ID:p+zwcdRJ
プロジェクトの管理者が長期休暇で居なかったからな
今回はバグ修正とリファクタリングが多い
不在の間に溜まってたissueとPRも整理途中って感じだ
0862デフォルトの名無しさん
垢版 |
2017/09/03(日) 16:16:24.17ID:uF0EtmbD
4はパフォーマンス改善が大きい
あとはifとか
もう9月だから5出るぞ
0868デフォルトの名無しさん
垢版 |
2017/09/06(水) 08:52:58.29ID:ZKLFsM4G
https://eow.alc.co.jp/search?q=tldr

TLDR
【略】
=Too long. Didn't read.
長過ぎ。読みませんでした。/長文うざい(と言う人のための要約)。
◆【場面】ネット上などで「文章が長過ぎる」と文句を言う。転じて「長文を嫌う人のための要約」という意味でも用いられる。
0869デフォルトの名無しさん
垢版 |
2017/09/06(水) 18:28:14.77ID:8/JJ3nEQ
○次受けが多いほど退場率が早くなる。高くなる

直受けの50万 客:いつまでもうちにいていいよ
3次受けの50万(客は90万払ってる) 客:短期延長していい?
5次受けの50万(客は150万払ってる) 客:作り終わったらとっと出てけ できなかったら即退場だ 
長時間労働 高稼働 高スキル要求が多い

零細フリーランスサイトは5次受けから誰もできない難易度の高い仕事 余り物の仕事を紹介してくる。40万円代でやってくれと
これならJIETから3次でいったほうがいいな

446非決定性名無しさん2017/08/02(水) 22:12:48.95

JIETに毎月5千円払えば3次から入場できるだろ?
高額をうたうフリーランスのサイトはだいたい5次から45万円
JIETで閲覧応募できる末端価格からさらに搾取するのが高額をみせつけるフリーランスサイトでした
高額案件をみせつけるフリーランスサイトも案件の取得はJIETでした

JIETに加入すれば誰でも3次60万からスタートだ。フリーランスのサイトをやってる
自称エージェントもそこから案件情報を取得しきてる。サイトで60万で釣って40万から55万の間でやらしている。

372仕様書無しさん2017/08/11(金) 10:31:43.41
フリーランスで検索すると引っかかる零細ITがやっているフリーランスのサイトはだめだ。
高額に見せているけど実際は50万前後
JIET加入した方がいいよ。案件は毎日千件以上末端価格は60万円 平凡な稼働時間の80万円の案件もある。
ユー子も求人をだしてる。名刺も渡せる。ユー子に名刺が渡せるんだぞ。夢のようだ

自称エージェントはJIETから流れてくる案件を転売してるだけだった。
JIETに加入すれば誰でも案件に応募することができた。収入が40万50万台にならなくて済む

エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×3 = 言い値50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×1 悪質な言い値で50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - JIETに加入して公表価格で応募できる
0870デフォルトの名無しさん
垢版 |
2017/09/19(火) 11:15:37.37ID:/BmvhpgH
jsbinみたいなやつでautocompleteをサポートしたeditorあるやつないかな。
誰か作って
0878デフォルトの名無しさん
垢版 |
2017/10/10(火) 03:03:10.33ID:kZcMF3GJ
今はTSとほぼ同じ構文が使えるみたいだし推論が強い分言語としてはFlowのほうが格上になったと思うよ
開発ツール等を含めた評価はどうなるか知らんが
0879デフォルトの名無しさん
垢版 |
2017/10/10(火) 19:56:20.72ID:n13p9MLl
>>878
対応するライブラリが圧倒的に少ないからflowはゴミだよ
TSと完全互換とかならまだ可能性あったかもね
0880デフォルトの名無しさん
垢版 |
2017/10/12(木) 06:43:35.33ID:D9zQ5ULh
最初は俺もゴミかと思ったけど静的解析ツールとしてってことだと
jsのプロジェクトに段階的に型をつけていくならありかなって思ったんだよね。
0883デフォルトの名無しさん
垢版 |
2017/10/14(土) 22:27:47.84ID:+JNXgfir
非英語Issueが次々と投げ込まれていくところを想像すると胸が熱くなるな
誰がこういうの決定してんだろ
0890デフォルトの名無しさん
垢版 |
2017/10/17(火) 08:07:20.81ID:ALnPGbmE
2.4.2から2.5.3に上げたら、User defined type-guard functionとTagged union typeの組み合わせで
型をうまく判断してくれなくなった。バグか仕様変更かどっちだろう?
0892デフォルトの名無しさん
垢版 |
2017/10/18(水) 22:10:52.67ID:wBhwyrKl
TypescriptでReact使ってる人にお聞きしたいんですけど
Componentを継承して新しいコンポーネントを作るわけですけど、
class CurrentComponet extends React.Component<Props> {
}
とつくってさらに
class NewComponet extends CurrentComponet {
}
とやってNewComponetをつくるとしますよね。
それはそれで使えるんですけどNewComponetのpropsはCurrentComponetのpropsしか使えないですよね。
PropsをNewComponet用に拡張する方法ってないですかね?
素直に一からComponent作るしかないでしょうか
0893デフォルトの名無しさん
垢版 |
2017/10/18(水) 23:58:41.35ID:5bsiTMSo
>>892
class CurrentComponet<T extends Props> extends React.Component<T> {
}
0894デフォルトの名無しさん
垢版 |
2017/10/19(木) 09:09:43.33ID:33xh/nBB
>>893
うほー。神よ!
でもぶっちゃけ何が起こってるのかよくわかってないです。

> class CurrentComponet<T extends Props> extends React.Component<T> {
上記Tは一体いつ解決されてるんですかね。
そもそもTypeScriptでReactのコンポーネントの書き方ってこっちが正解だったりするんで?
0895デフォルトの名無しさん
垢版 |
2017/10/19(木) 20:20:28.20ID:LXr9z35K
それか
class CurrentComponet<T> extends React.Component<T&Props> {
}
でもいいな
こっちが使う側からすると楽かも

>>894
説明面倒だからggrks
0897デフォルトの名無しさん
垢版 |
2017/10/21(土) 12:56:00.66ID:VqKLKVGY
>>895
単純にReact.d.tsと見比べてみると良い。結局使う時に<Props>を使えるようにCurrentComponet<T> としておくのが目的
ジェネリクス型に追加情報を与えるための概念と考えると分かりやすい。
<T>をTopに残しておいてそこを解決すると React.Component<T>も自動的に追従する
0901デフォルトの名無しさん
垢版 |
2017/10/23(月) 21:24:20.12ID:xr09IWoG
地味にawait書き忘れてちゃんと動かないというパターンが多発してるんですが
TSLintでawait入れ漏れで指摘する機能ってないですかね?
0907デフォルトの名無しさん
垢版 |
2017/11/02(木) 20:11:59.50ID:eNK4k+UN
ffのアップデート並み
0908デフォルトの名無しさん
垢版 |
2017/11/02(木) 22:27:03.79ID:taAN7xor
なお間に合わなかったバグフィクスはガンガン後回しにしてリリースする模様
0913デフォルトの名無しさん
垢版 |
2017/11/12(日) 02:41:12.23ID:EwcJ+uHe
2.6になったらコンパイルエラーが多発する。react-redux のconnect周りで。
なんでー
0914デフォルトの名無しさん
垢版 |
2017/11/12(日) 13:16:12.66ID:oQrEnmVF
MEAN勉強中なのにangulerってマイナーなの?ショック
0916デフォルトの名無しさん
垢版 |
2017/11/25(土) 21:28:52.67ID:UiY7gN7d
オーバーロードはできるけど、実装は1つとか・・
JSONへのシリアライズ・デシリアライズは自分で制御するので、
constructor(json: any)と
construcotr(parameter1: type1, parameter2: type2)
二つ用意したいんですけど。最初は
construcotr(parameter1: type1, parameter2: type2)だけ用意しえ、
staticメソッドの方に
statis parseJson(json: any): Class1として、そこでconstrucotr(parameter1: type1, parameter2: type2)を呼んでたんですけど、
これだと子に親のインスタンスの参照渡せないんですよね。
0920デフォルトの名無しさん
垢版 |
2017/11/26(日) 23:18:17.65ID:rkyPHH9I
願望なんだけど
Typescriptは言語自体がWebアプリ開発用に
丸ごとフレームワークになったら良いと思う。

Flash(flex)のActionscript3も
フレームワーク化達成した様だし。
http://flex.apache.org/
0921デフォルトの名無しさん
垢版 |
2017/11/26(日) 23:25:22.11ID:pQh5Iwo2
>>920
JSのスーパーセット目指してるんだし無理に決まってんだろ
レス数が900を超えています。1000を超えると表示できなくなるよ。

ニューススポーツなんでも実況