TypeScript part3

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/04/26(木) 21:48:23.07ID:mMDBzDaB
http://www.typescriptlang.org/

JavaScript that scales.
TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
Any browser. Any host. Any OS. Open Source.

part1
https://peace.5ch.net/test/read.cgi/tech/1349187527/
part2
https://mevius.5ch.net/test/read.cgi/tech/1430386649/
2020/06/06(土) 19:11:34.24ID:FUHWS7EH
>>416
そうすることにします

>>417
AppData\Roaming\npm
にありました。

>>418
元々コンソール上からはどのコマンドも実行できるのですが、
vscodeのタスクから使うとエラーが出てしまうんです。

色々テストしていたところ、
単なるシェルコマンド echo unko ですらエラーが出るのでvscode固有の問題っぽいです
2020/06/06(土) 20:04:01.16ID:vddsi0s3
>>415
パラメータの書式が違うってのはPowerShellでよく見るエラーだけど、VSCodeってPowerShell叩いてるんだっけ?
VSCode固有の問題と決めつけるんじゃなくてもう少し調査してみたら?
2020/06/07(日) 10:34:46.16ID:s05OkEKn
解決しました

日本語版のWindowsではpowershell.exeがShiftJISで読まれるので、
合わせてvscode上のPowerShellの文字コードをShiftJISに変えていたのが原因でした。
元のUTF-8に戻したら問題なく実行できました。

tscをフルパスで実行したらパスの途中にスペースが発生し、
PowerShellスクリプトのデバッグ時によく見た文字化けだったので気づけました。

>>420
ご名答です
PowerShellが叩かれていて、エラーもPowerShellからでしたw
2020/06/11(木) 18:33:48.61ID:Jv4rHxRX
Nodeでサーバーを立てているような場合、
ユーザーが入力した値を格納する変数の型は一旦unknownとしておいた方が良いのでしょうか?
例えば以下の様な場合です。
 const func1 = (userInput: unknown) => {...};
 const func2 = (userInput: string) => {...};

バリデーション等を行って問題が無ければ、
改めて型宣言した変数に代入し直すような方法が一般的ですか?
2020/06/13(土) 14:38:30.02ID:fZdtN3m2
ついにDartがnull安全になったそうな
https://forest.watch.impress.co.jp/docs/news/1258690.html

webからiOSまで1言語で書ける(ちゃんと動くとは言っていない)
2020/06/13(土) 16:20:45.29ID:cnsVZnHy
今TypeScript+Reactを勉強しているのですけど、テーブルのコンポーネントで使いやすいものって無いですか?
テーブルのヘッダはそのままで縦は内容だけスクロールして横はテーブルも一緒にスクロールするみたいなものが良いです
2020/06/13(土) 21:17:17.22ID:qaq6yJI2
jexcel
react-table

react-tableは、初心者なら v6 おすすめ
理由は、標準でUIが付いてるから簡単にそれっぽいものができる
ドキュメント調べれば割と多くの挙動に対応できるはず
代わりに、UIのカスタマイズがつらい
「あそこのcssを弄りたいけど、どうやって指定すればいいかわからん」
「!importantじゃないと上書きできない」
的なことになりがち
あと、@types を v6 のをインストールするよう注意すること

UIごりごりにカスタマイズしたいなら最新の v7
headless と謳われてるように、UIが一切ないから全て自分の思い通り
代わりに、学習コストが高い
あと @types 書いたやつがバカなのか、Genericsの対応が酷くて
キャストがたくさん必要でうんざりする
426424
垢版 |
2020/06/14(日) 00:14:28.32ID:uuDX9j1b
>>425
有難うございます、react-tableを調べてみます。

material-uiがElectronで
TypeError: Cannot use 'in' operator to search for 'ontouchstart' in null
とか出て動かなくて困っていました。
ボタン一個しか指定していないサンプルを写してこれです。
2020/06/14(日) 00:51:17.06ID:864/oVLm
>>426
https://stackoverflow.com/questions/60473495/how-to-properly-set-up-material-ui-with-electron-react-boilerplate

速攻それっぽいの出てきたが、ちゃんとググったかねキミィ?
2020/06/14(日) 12:09:11.89ID:qCi3/fDK
これっぽいの見たことあるけど、他にも気になる事があって見落としてました
<div>に書いてあるの要るのかな?
今試せる環境でないので後日に
2020/06/25(木) 08:05:47.95ID:Nd1uEPT+
TypeScriptってsetIntervalとかsetTimeout,
async/await, Promiseとか使えるんですか?
430デフォルトの名無しさん
垢版 |
2020/06/25(木) 08:55:25.54ID:3QV8gPE9
逆に使えない意味がわからない
2020/06/25(木) 09:53:31.94ID:2LahzjFh
Ruby on Rails では、React も多いけど、

TypeScript を使う香具師は、いるのかな?
2020/06/25(木) 10:01:29.46ID:PKyG+WtC
ルビカスは宗教上の理由からTypeScriptなは絶対に使えないんで消えて
フロントエンドの方が厳格な言語で書かれてるとか頭おかしいからなw
2020/06/25(木) 10:37:01.47ID:V5BYtNqQ
かわいそうに。
434デフォルトの名無しさん
垢版 |
2020/06/25(木) 11:14:26.11ID:2XRewe5U
CoffeeScriptとは何だったのかω
2020/06/25(木) 11:57:37.69ID:2LahzjFh
Ruby on Rails 6 から、Node.js, webpack が標準になったから、

もう、Coffee Script には依存していない
2020/06/25(木) 14:16:09.33ID:3QV8gPE9
だからどうしたRubyガイジ
さっさと消えろ
2020/06/25(木) 14:49:25.12ID:V5BYtNqQ
webpack使えるなら、普通にもうRoRでhtml作る必要ないのでは
2020/06/25(木) 14:51:02.50ID:V5BYtNqQ
ほんまやな
PHPもRubyも、型無し糞言語は滅びるべきや
json以外を喋る邪悪なWebサーバーは1台残らず破壊しろ
2020/06/25(木) 14:52:55.59ID:3edAgV/k
この場違いRuby妖怪はアンカ飛ばさんでも一応レス見てる素振りを見せるのがちょっとしたホラー
440デフォルトの名無しさん
垢版 |
2020/06/26(金) 03:43:22.98ID:4Xp41V6m
GUI は、React, Bootstrap で良いけど、
サーバ側が、Node.js じゃ辛い

Rails, Sinatra などの、Ruby の方が分かりやすい

Rubyの欠点は、web アプリだけしか作れないこと!
スマホ用アプリも必要なら、Electron, React Native + Expo

それか、Unity
441デフォルトの名無しさん
垢版 |
2020/06/26(金) 07:42:47.69ID:Sd6G194T
Rubyの欠点はお前みたいなキチガイがスレチのクソ宣伝で評価を下げてることだよ
2020/06/26(金) 14:54:51.55ID:6IXnju0o
https://twitter.com/yokatsuki/status/744702839558017024

多言語disをついやってしまう癖を止めて欲しい。
最後に参加したTokyuRubyKaigiで「Javaやってる人手を挙げてはーい♪今挙げた人はすぐに帰ってくださーい♪」って言ったのは忘れたくても忘れられない。
https://twitter.com/5chan_nel (5ch newer account)
2020/06/26(金) 16:51:07.25ID:Z5HJiD+l
型無し糞言語やってる人は帰るだけじゃ済まされない
死んでください
2020/06/26(金) 18:00:16.15ID:9etEQyfp
俺も東横線代表として参加してくるわ
2020/06/26(金) 20:32:19.16ID:aHXqCiQW
>型無し糞言語

今どきの言語で何があったっけ?
2020/06/26(金) 22:12:45.13ID:TcIyIoqu
>>442
10年以上前に同じようなJava disやってたスピーカーがいたが
別のスピーカー/コミッター達にあれはやめたほうがいいって厳しく批判されてたけどな
その時代の話なのかな
447デフォルトの名無しさん
垢版 |
2020/06/27(土) 01:29:27.09ID:9wE9An+g
ありますで喩えると
Java山中さん
*by笹井さん
2020/07/01(水) 14:29:27.01ID:OAvcKBIQ
Talking TypeScript with the engineer who leads the team
https://stackoverflow.blog/2020/06/15/talking-typescript-with-ryan-cavanaugh/
449デフォルトの名無しさん
垢版 |
2020/07/15(水) 11:01:56.72ID:IqfNcqeZ
TypeScript で、無名配列のJSON ファイルは、import できない

[
["a", 10],
["b", 20]
]

名前を付ければ、import できる。
import { xyz } from "./a.json";

{"xyz": [
["a", 10],
["b", 20]
]
}
450デフォルトの名無しさん
垢版 |
2020/07/15(水) 12:14:33.71ID:cL9c5hZ8
typescriptに限らず
そういう実装結構ある
全体は{}を仮定してるの
2020/07/15(水) 13:02:18.34ID:pL8+4mwq
jsonってトップレベルはObject必須だと思ってた
そういう仕様あるのかな
2020/07/15(水) 15:59:04.81ID:T1dYtDa5
Type Script 使ってみて思ったけど
最初から ES がこの仕様だったら本当に助かってた
そして今の課題は既にある ES のライブラリ摂りこむのが面倒
なんとかならんのか??っていう
453デフォルトの名無しさん
垢版 |
2020/07/15(水) 16:48:00.29ID:cL9c5hZ8
C# 使ってみて思ったけど
最初から C がこの仕様だったら本当に助かってた
そして今の課題は既にある C のライブラリ摂りこむのが面倒
なんとかならんのか??っていう
2020/07/15(水) 16:58:29.54ID:pL8+4mwq
割とマジで攻守共にTypeScriptが最強だわ
TSに欠けてるのは、あとはパターンマッチくらいだろう
TypeScriptがネイティブバイナリ吐くようになればいい
2020/07/15(水) 19:14:22.28ID:Iul+D8/c
>>449
そもそもimportはjsonを読むためにあるわけじゃないから読めなくても不思議はないが、
ts3.9.6で試してみたら普通に読めるんだが?

>>451
rfc読めばわかるがトップレベルだけ特別扱いする必要ないしね。
456449
垢版 |
2020/07/15(水) 19:20:18.72ID:IqfNcqeZ
./a.json に以下だけを書いて、どういうimport 文を書いたの?

[
["a", 10],
["b", 20]
]
2020/07/15(水) 20:06:40.11ID:Iul+D8/c
ふつうに
import j from './a.json';

"module"は"commonjs"
2020/07/15(水) 20:24:52.52ID:guZu56HE
esModuleInterop か allowSyntheticDefaultImports は true になってる?
false や未設定なら、 `import * as j from './a.json';` でインポートする必要がある
2020/07/15(水) 20:31:01.05ID:Iul+D8/c
ああすまん、"resolveJsonMdule": true してた。
つまりmoduleじゃないjsonをロードしたいならこれが必要ってことね。
460449
垢版 |
2020/07/15(水) 21:20:34.32ID:IqfNcqeZ
あれ? 普通に、これで、import できた!
漏れの勘違いだったみたい

import j from "./a.json";

漏れの設定は、

"module": "es2015",

"esModuleInterop": true,
"resolveJsonModule": true,
2020/07/16(木) 13:16:30.71ID:Bj5j4Y6i
こういうのはだめなんだっけ
[
["a", 10],
["b", 20],
]
462デフォルトの名無しさん
垢版 |
2020/07/16(木) 15:09:37.34ID:J/CG/YnB
TypeScript の開発中は、
Webpack のオフライン機能、workbox を使わないから、

package.json の、"workbox-webpack-plugin": "^5.1.3" を、
コメントアウトしようとしたが、形式エラーになって出来ない

削除はできるけど、コメントアウトで残しておきたい
2020/07/16(木) 15:10:33.56ID:L+apgnKF
gitを使いましょうよ・・・
2020/07/16(木) 15:13:26.35ID:J/CG/YnB
>>461
JSON ファイルでは出来ない

よく知らないけど、新しめの、JS/TS ファイルでは出来るかも
2020/07/16(木) 18:14:40.47ID:QwF0ci9g
よく知らないなら黙ってろrubyガイジ
2020/07/16(木) 18:31:21.38ID:L+apgnKF
>>461
ケツカンマをファックできるのはECMAScript 5以上
JSONはファックできない
467デフォルトの名無しさん
垢版 |
2020/07/22(水) 02:36:42.07ID:2/9nnKBr
クライアント向けの開発サーバーが付いている、Parcel を使っている香具師いる?

Postman を使っている香具師いる?
これは、REST クライアントかな?
漏れは、VSCode の拡張機能の、REST Client を使っているけど

他には、TypeScript で、Express サーバーを実行する、ts-node-dev は?
2020/08/01(土) 03:44:15.17ID:BmlbAE5y
pacage.jsonのバージョンを取得したくて
src/index.tsで
import {version} from '../package.json'
を思いついたのですが、これだとコンパイルでdistに排出されるときにpackage.jsonも排出されてしまいます
これを解決する(依存関係をdistに持ってくるのではなくが./package.jsonを常に読むようにしたい)方法はあるのでしょうか?
2020/08/01(土) 07:24:44.96ID:WBys/bG4
コンパイルするたび常に最新のpackage.jsonがdistに排出されるんだから
それでええんちゃう?
2020/08/01(土) 19:08:50.40ID:BmlbAE5y
>>469
自分的にはdistに排出される先にもう一つpackage.jsonが作られるのが気持ち悪いと感じたのですがそうでもないんですかね?
2020/08/01(土) 21:11:01.65ID:PGLLO5uD
たしかにキモい
2020/08/01(土) 21:32:06.85ID:WBys/bG4
普通にgitignoreしてるだろうしdistにpackage.jsonがあっても特にデメリットないし
distに何が吐かれててもええんちゃう?
473デフォルトの名無しさん
垢版 |
2020/08/03(月) 07:34:16.45ID:qdvto+rV
>>468
process.env.npm_package_version
じゃダメなの?
2020/08/03(月) 09:46:39.86ID:l1ICYS01
>>473
横からだけどサンキュー
こんなことできるんだね、勉強になった

package.jsonの各種要素を読み込みたい! - DEV
https://dev.to/origamium/package-json-1626
475デフォルトの名無しさん
垢版 |
2020/08/03(月) 10:52:32.11ID:qdvto+rV
>>474
公式にもこんなところにしれっと書かれてる
https://docs.npmjs.com/misc/scripts#packagejson-vars

package.jsonの各フィールドの説明してるページには書いてないんだなぁ…
2020/08/05(水) 08:07:16.62ID:uWbem7nq
Announcing the new TypeScript Website
https://devblogs.microsoft.com/typescript/announcing-the-new-typescript-website/
2020/08/21(金) 08:26:54.83ID:D9+iHL3k
Announcing TypeScript 4.0
https://devblogs.microsoft.com/typescript/announcing-typescript-4-0/
2020/08/21(金) 09:31:14.74ID:pu35Qu/1
もう4.0の時代なのか・・・
それなのにおまいらのプロダクトときたら・・・
2020/08/21(金) 11:12:40.65ID:7l2hhkMF
現場猫『ヨシッ!』
480デフォルトの名無しさん
垢版 |
2020/08/21(金) 11:15:43.37ID:6zccVHNz
監督猫『ヨシッ!』
2020/08/21(金) 13:28:51.80ID:pu35Qu/1
一次請猫『ヨシッ!』
2020/09/14(月) 09:29:26.60ID:CfIbX1f0
ここで聞いて良いのかわからないけどimportの拡張子(.js)を省略して、js変換時に拡張子をつけることってできないかな?
開発中はtsc使って開発者終了時だけwebpack使いたいのだけども
2020/09/14(月) 09:33:13.37ID:/HJ+wc6C
そのようにwebpack設定するだけでは
cssやjpgとかの非プログラムファイルにしかimport文に拡張子書いたことないわ
2020/09/14(月) 21:55:40.83ID:CfIbX1f0
webpackの方でなんとかするしかないか。
ありがと
2020/09/15(火) 00:09:40.68ID:g6ghhz4T
typescript のポリシーからすると将来的にも対応される可能性は低い
2020/09/28(月) 14:36:37.18ID:NZq3hOP+
マイクロソフト発のオープンソース言語「TypeScript」、生みの親が語る開発当初や背景
https://japan.zdnet.com/article/35159882/
487デフォルトの名無しさん
垢版 |
2020/09/28(月) 19:49:45.93ID:kE1qWQhp
TypeScriptのまえにWebAssemblyが登場していたらみなそっちに飛び付いたのだろうか。
2020/09/28(月) 22:54:37.39ID:t2I6kwxp
何だかんだ言ってみんなJavaScriptが大好きだからな
それにブラウザに実装されているAPIはJavaScriptから使うこと前提だからWebAssembly使っても余計な苦労するだけだ
ゲームには向いてるだろうけど
2020/09/28(月) 22:56:43.96ID:L69JRisQ
既存のJS資産を流用できたのも強みの1つだったと思うから、やっぱTSの戦略勝ちじゃねえの
つかWASMって一時期騒がれてたけど今どうなったんだ?
2020/09/28(月) 23:49:19.24ID:XJOyCoAG
>>489
Unityが実用?になってるぐらい。

なにしろ、仕様も含めて
今後どうなるかわからん状況では?
2020/09/29(火) 09:41:15.62ID:tKw94fLv
FlutterがDartじゃなくてTSだったら良かったのに
2020/09/29(火) 11:21:16.26ID:P1Q7o4iq
ほんとそれな
あんな劣化Javaみたいな言語ありがたがってる連中の頭が理解できない
2020/09/29(火) 12:10:42.86ID:aaxcyAZi
大して機能違わないじゃん。
何が足りないと思ってるの?
494デフォルトの名無しさん
垢版 |
2020/09/29(火) 13:15:04.46ID:pjrsoCYz
知能
努力
向上心
2020/09/29(火) 13:35:36.65ID:P5R6/7cr
そうだな、JavaとJavaScriptも一緒だしな
2020/09/29(火) 14:11:13.25ID:Y54HkFIW
>>493
NULL安全とか?
2020/09/29(火) 15:46:22.91ID:aaxcyAZi
>>496
あるよ
>>494
ないよ
2020/09/29(火) 18:45:22.24ID:fbgKh1ZX
マイクロソフト発のオープンソース言語「TypeScript」、生みの親が語る開発当初や背景
https://japan.zdnet.com/article/35159882/
2020/09/30(水) 13:09:08.11ID:pBMNn9J9
>> Microsoftが2018年に75億ドル(約8000億円)を投じて買収したGitHub
知らんかった
オンライン版のvscodeがGitHubにあるのはそういうわけか
500デフォルトの名無しさん
垢版 |
2020/10/02(金) 00:47:34.12ID:c4z818i5
ピチャイのマイクロソフトは良いマイクロソフト。
501デフォルトの名無しさん
垢版 |
2020/10/10(土) 13:18:23.70ID:hWE3VueY
こんにちは。プログラミング初心者です。
TypeScriptとJavaScriptはどっちが最強なんでしょうか?
これから始める場合はどっちがいいのですか?

TypeScriptはJavaScriptとくらべ実行速度は変わらないのに
静的型付けのため記述が面倒で学習する価値がないと友達が
言ってたんですがこれは正しいですか?
2020/10/10(土) 14:42:01.38ID:xtGRZD/P
>>501
普段からめちゃくちゃな
読めないコード書いてる人には
難しいと思いますよ。
503デフォルトの名無しさん
垢版 |
2020/10/10(土) 15:45:53.37ID:hWE3VueY
>>502
なるほど。つまりTypeScripはtコードをきれいに見せるためだけの言語ってことなんですね。
2020/10/10(土) 15:53:32.39ID:PAS52Dcu
価値がわかるようになるまではJS使うのをおすすめする
今TS触っても嫌いになるだけだと思う
505デフォルトの名無しさん
垢版 |
2020/10/10(土) 16:35:21.67ID:hWE3VueY
ん。。。価値が分かる人にしかわからないプロ向けの言語なんですね。。。
2020/10/10(土) 16:57:30.55ID:OrgjdyW8
綺麗に見えるということは他人が書いたコードであっても理解しやすいといえる
2020/10/10(土) 17:08:45.97ID:hWE3VueY
複数人で開発するとき用ってことですね。
一人でWEBアプリ作って満足してる分には必要なさそうですね。
2020/10/10(土) 17:26:29.17ID:BjY8+1pb
ソースを公開する時に型は必須だな
複数人開発だと必然的に他人にソースを公開する訳だから型は必須だな
一人で開発してる時も未来の自分にソースを公開すると考えれば型は必須だな
2020/10/10(土) 17:30:06.10ID:BjY8+1pb
この理屈で行くと型が必要無い状況は使い捨てのコードを書く時になる
実際、実験的なコードを書くときはJavaScriptでサクッと書いてる
2020/10/10(土) 17:31:37.81ID:hWE3VueY
型を指定するのは実行速度のためだと思ってましたが違うんですね。
2020/10/10(土) 17:41:03.06ID:myt/k5c7
個人で、1ファイル、2, 300行程度のオモチャしか書かない奴にはいらないかもしれんな
複数人で、2ファイル以上のまともなコード書くなら、型は必須

「全てのfunctionが何かを引数にとって何かを返します。その『何か』はコードを読まないとわかりません」
じゃ困るだろ
2020/10/10(土) 17:46:03.97ID:hWE3VueY
複数人でも一つ一つ関数定義を確りして
コメントを残せば後から見返してもわかりそうな気がするのは
私がまだ未熟なんですね。
2020/10/10(土) 17:46:21.26ID:jqYiciHv
3ヶ月前の自分は他人
webのようにリリース後にメンテする可能性があるなら確実に過去の自分を恨むだろう
2020/10/10(土) 17:56:33.59ID:myt/k5c7
>>512
でもそのコメント、人によって書き方バラバラだし、その通りに実装・使用されているかわからないよね
そのコメントが規格化されていて、その通りに実装・使用されていることを保証してくれるのがTypeScriptとでも思え
2020/10/10(土) 18:02:00.15ID:hWE3VueY
わかりました。TypeScriptの勉強をしてみます。
バックにはMicrosoftとGoogleがついてるみたいですので
安心して学習してみます。
2020/10/10(土) 18:14:27.06ID:myt/k5c7
せや
どこの馬の骨ともしれんバカではなく
MicrosoftとGoogleの天才たちを信じろ
2020/10/10(土) 18:32:27.26ID:ekvQuOcm
型情報による補完などのエディタの支援機能がないと書けない体になってしまった…
2020/10/10(土) 18:36:49.23ID:jkmsbl3z
>>502
これさ無茶苦茶なコード書いてる人がキレイなコードかけるようになるって点でTSって素晴らしいと思う
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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