http://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.
前スレ
http://peace.2ch.net/test/read.cgi/tech/1349187527/
TypeScript part2 [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2015/04/30(木) 18:37:29.98ID:ynMflk1l556デフォルトの名無しさん
2017/02/16(木) 14:34:53.75ID:I/Biy33K typescript ってclassの中でclassは定義できないの?
557デフォルトの名無しさん
2017/02/16(木) 16:54:40.22ID:H/kSQGez >>556
innerClass = class { ... } の構文を使ってみては?
innerClass = class { ... } の構文を使ってみては?
558デフォルトの名無しさん
2017/02/16(木) 18:23:19.49ID:I/Biy33K559デフォルトの名無しさん
2017/02/17(金) 10:02:26.32ID:XBlUtmng 構造的にESにないものは採用されないんじゃなかろうか
俺もprivate static Inner = class {...で試したけどあまり使えなさそうだからやめた
俺もprivate static Inner = class {...で試したけどあまり使えなさそうだからやめた
560デフォルトの名無しさん
2017/02/23(木) 21:12:34.52ID:sjM/LKuB Announcing TypeScript 2.2
https://blogs.msdn.microsoft.com/typescript/2017/02/22/announcing-typescript-2-2/
TypeScript 2.2.1 変更点
http://qiita.com/vvakame/items/eb6c054360868b88f9b1
https://blogs.msdn.microsoft.com/typescript/2017/02/22/announcing-typescript-2-2/
TypeScript 2.2.1 変更点
http://qiita.com/vvakame/items/eb6c054360868b88f9b1
561デフォルトの名無しさん
2017/03/19(日) 00:28:00.75ID:zrbJr/YL Chrome拡張機能を作ってる方結構いるみたいなので教えてほしいのですが
「chrome.〜〜〜」のAPIが「Supplied parameters do not match any signature of call target.」とコンパイルエラーになります
「/// <reference path="./node_modules/@types/chrome/index.d.ts" />」でd.tsは指定しているのですが、他にも何か記述が必要ですか?
「chrome.〜〜〜」のAPIが「Supplied parameters do not match any signature of call target.」とコンパイルエラーになります
「/// <reference path="./node_modules/@types/chrome/index.d.ts" />」でd.tsは指定しているのですが、他にも何か記述が必要ですか?
562デフォルトの名無しさん
2017/03/19(日) 02:18:51.51ID:9qStAS/N563デフォルトの名無しさん
2017/03/19(日) 02:40:46.59ID:/2pY/ZTT インストしても明示的なインポートなしには使えんよ
564デフォルトの名無しさん
2017/03/19(日) 03:16:06.29ID:TMN19OY5 >>561
エラーしてる部分のソース貼るといいよ
エラーしてる部分のソース貼るといいよ
565561
2017/03/19(日) 11:24:02.73ID:zrbJr/YL 皆様ありがとうございます…解決しました…chrome.〜〜に引数が設定されてなくてエラーになるという超凡ミスでした…
エラーメッセージの意味をきちんと理解しないといけないですね…
--- コンパイルエラー ----------------------------------------------------------
if (window.location.href.indexOf('aaa.com') !== -1) {
chrome.pageAction.onClicked.addListener();
}
------------------------------------------------------------------------------
--- コンパイル正常 -----------------------------------------------------------
if (window.location.href.indexOf('aaa.com') !== -1) {
chrome.pageAction.onClicked.addListener(() => {
});
}
------------------------------------------------------------------------------
あと、仰る通り<reference path= />なくてもコンパイル通りました
皆様お騒がせしました
エラーメッセージの意味をきちんと理解しないといけないですね…
--- コンパイルエラー ----------------------------------------------------------
if (window.location.href.indexOf('aaa.com') !== -1) {
chrome.pageAction.onClicked.addListener();
}
------------------------------------------------------------------------------
--- コンパイル正常 -----------------------------------------------------------
if (window.location.href.indexOf('aaa.com') !== -1) {
chrome.pageAction.onClicked.addListener(() => {
});
}
------------------------------------------------------------------------------
あと、仰る通り<reference path= />なくてもコンパイル通りました
皆様お騒がせしました
566デフォルトの名無しさん
2017/03/19(日) 13:25:11.81ID:9qStAS/N567デフォルトの名無しさん
2017/03/28(火) 10:03:39.39ID:r9lg9pov ターゲットにWebAssemblyを追加する計画とか無いのかな
568デフォルトの名無しさん
2017/03/28(火) 14:44:15.57ID:3EkUFmFA interfaceの定義でArrayの要素が2つしかない場合の定義の仕方ってあるかな
interface Pair {
number[2]
}
interface Data {
pairs :Pair[]
}
みたいな感じで定義できないもんか。
諦めてnumber[]にするしかない?
interface Pair {
number[2]
}
interface Data {
pairs :Pair[]
}
みたいな感じで定義できないもんか。
諦めてnumber[]にするしかない?
569デフォルトの名無しさん
2017/03/28(火) 14:54:23.37ID:OG3qmdJs タプル使え
570デフォルトの名無しさん
2017/03/28(火) 17:30:18.19ID:3EkUFmFA571デフォルトの名無しさん
2017/03/30(木) 23:49:26.09ID:Ya8jf9nB index.htmlに直接CDNからreactとreact-domを読み込んで
npmからは@types/reactと@types/react-domをインストールし
tsxファイルからimport文を使わずにreactを使ったところ何の問題もなく動いた。
plotly.jsを同じように使おうとしたら自動では定義ファイルを読んでくれない。
この違いは一体何なのか?
と思って定義ファイルを見たところreactとreact-domには以下のような記載がある
export as namespace ReactDOM;
export as namespace React;
上記を真似て定義ファイルに
export as namespace Plotly;
を追加したら同じ挙動になった。
export as namespace XXX ってなんすか?
npmからは@types/reactと@types/react-domをインストールし
tsxファイルからimport文を使わずにreactを使ったところ何の問題もなく動いた。
plotly.jsを同じように使おうとしたら自動では定義ファイルを読んでくれない。
この違いは一体何なのか?
と思って定義ファイルを見たところreactとreact-domには以下のような記載がある
export as namespace ReactDOM;
export as namespace React;
上記を真似て定義ファイルに
export as namespace Plotly;
を追加したら同じ挙動になった。
export as namespace XXX ってなんすか?
572デフォルトの名無しさん
2017/03/31(金) 01:47:51.53ID:y+1gOmlP そのモジュールのグローバル変数化宣言
公式wiki嫁
公式wiki嫁
573デフォルトの名無しさん
2017/04/01(土) 20:31:37.83ID:es45r1Ne 型定義ファイルの書き方がよくわからなくてつんでいます
node-transmission
https://github.com/FLYBYME/node-transmission
の型定義ファイルが見当たらないので作っているんですが
もとのjsファイルのexport宣言が
var Transmission = module.exports = function (options) {
ってなっている場合に型定義ファイルとして以下のように書いても認識されないです。
declare interface transOptions {
port: number
host: string
}
declare class Transmission {
constructor(optins: transOptions)
}
export default Transmission
使う場合に
import * as Transmission from "transmission";
var transmission = new Transmission({
port : 9091,
host : '127.0.0.1'
});
って書いてもtransmission はany型のようです。
どう書くのが正解でしょうか?
node-transmission
https://github.com/FLYBYME/node-transmission
の型定義ファイルが見当たらないので作っているんですが
もとのjsファイルのexport宣言が
var Transmission = module.exports = function (options) {
ってなっている場合に型定義ファイルとして以下のように書いても認識されないです。
declare interface transOptions {
port: number
host: string
}
declare class Transmission {
constructor(optins: transOptions)
}
export default Transmission
使う場合に
import * as Transmission from "transmission";
var transmission = new Transmission({
port : 9091,
host : '127.0.0.1'
});
って書いてもtransmission はany型のようです。
どう書くのが正解でしょうか?
574デフォルトの名無しさん
2017/04/01(土) 22:04:14.42ID:es45r1Ne575デフォルトの名無しさん
2017/04/09(日) 14:34:29.06ID:ZBMiMXkM >>41
partial classは不採用になったので一応
Suggestion Backlog Slog, 4/3/2017
https://github.com/Microsoft/TypeScript/issues/14990
https://github.com/Microsoft/TypeScript/issues/563#issuecomment-291300044
partial classは不採用になったので一応
Suggestion Backlog Slog, 4/3/2017
https://github.com/Microsoft/TypeScript/issues/14990
https://github.com/Microsoft/TypeScript/issues/563#issuecomment-291300044
576デフォルトの名無しさん
2017/04/10(月) 14:18:00.18ID:BK5DCjs2 Google社内の標準言語としてTypeScriptが承認される。ng-conf 2017
http://www.publickey1.jp/blog/17/googletypescriptng-conf_2017.html
http://www.publickey1.jp/blog/17/googletypescriptng-conf_2017.html
577デフォルトの名無しさん
2017/04/10(月) 18:26:24.79ID:VEGABUso >>576
Dartどうすんだよ
Dartどうすんだよ
578デフォルトの名無しさん
2017/04/10(月) 20:28:20.75ID:kMiVc4KU 劣るうえ、使われてないdartは自動消滅。
ホントはわかってたこと。
ホントはわかってたこと。
579デフォルトの名無しさん
2017/04/11(火) 02:02:21.52ID:Kcnbnd8w typescriptでreduxの実装書くのしんどいね
http://qiita.com/wadahiro/items/7c421b668f28a99e2a29
こいつを参考に書いてるけど。他にいい書き方があれば
http://qiita.com/wadahiro/items/7c421b668f28a99e2a29
こいつを参考に書いてるけど。他にいい書き方があれば
580デフォルトの名無しさん
2017/04/11(火) 07:02:04.43ID:OeT6CnRN581デフォルトの名無しさん
2017/04/11(火) 17:04:01.31ID:ejHOB/DU >>579
こんなの誰が何に使うの?
こんなの誰が何に使うの?
582デフォルトの名無しさん
2017/04/11(火) 19:22:39.80ID:+8we66Ry ほんそれ
583デフォルトの名無しさん
2017/04/11(火) 22:09:52.06ID:rpuwd/d9 TypeScriptでreact-router-reduxに手を出したら大変な目に遭った。
584デフォルトの名無しさん
2017/04/11(火) 22:24:37.23ID:YJpuA+WP 単語が3つ以上入ってるパッケージに近寄りたくない
585デフォルトの名無しさん
2017/04/12(水) 19:01:00.44ID:BxTB0mZM586デフォルトの名無しさん
2017/04/12(水) 19:19:27.95ID:usx2Dq45 そういうフレームワーク色々あるやん
587デフォルトの名無しさん
2017/04/12(水) 20:26:06.76ID:IsZRv2xh588デフォルトの名無しさん
2017/04/12(水) 20:47:03.00ID:usx2Dq45589デフォルトの名無しさん
2017/04/12(水) 20:56:38.51ID:IsZRv2xh そのABCはストリングリテラル型には使えんわけよ。
590デフォルトの名無しさん
2017/04/12(水) 21:04:32.60ID:WRJ4LE6o redux の冗長な書き方をtypescriptの機能でなんとかしてほしいってことなんだろうけど。
react見たくpropsをinterface定義すれば大体いい感じで使える。みたいにredux の方もstateのinterface定義だけでいい感じに出来上がるような仕組みがほしい。
react見たくpropsをinterface定義すれば大体いい感じで使える。みたいにredux の方もstateのinterface定義だけでいい感じに出来上がるような仕組みがほしい。
591デフォルトの名無しさん
2017/04/12(水) 21:05:36.55ID:WRJ4LE6o >>585
つreact native
つreact native
592デフォルトの名無しさん
2017/04/12(水) 22:41:00.77ID:mYXXp/Z3593デフォルトの名無しさん
2017/04/12(水) 23:07:35.91ID:IsZRv2xh それ。
strが短いならそのまま書いても一緒だけど、actionのtypeって長くなりがちだから
二重に書くのがつらい。
strが短いならそのまま書いても一緒だけど、actionのtypeって長くなりがちだから
二重に書くのがつらい。
594デフォルトの名無しさん
2017/04/12(水) 23:08:47.06ID:0/0fFwi6 >>577
TypeScriptが標準言語になっても、Dartのことは忘れてませんよとGoogle担当者がフォロー
http://www.publickey1.jp/blog/17/typescriptdartgoogle.html
TypeScriptが標準言語になっても、Dartのことは忘れてませんよとGoogle担当者がフォロー
http://www.publickey1.jp/blog/17/typescriptdartgoogle.html
595デフォルトの名無しさん
2017/04/12(水) 23:50:07.42ID:29ufoOq3 constは型書かなくてもストリングリテラルに推論されるようになったんだが存知ない?
596デフォルトの名無しさん
2017/04/13(木) 00:12:31.67ID:IFJ42qsr 2.1からだね。2.0でも使ってたんだろうか
597デフォルトの名無しさん
2017/04/13(木) 00:19:44.83ID:rVYtPk7E ストリングリテラルに推論されるって?
これ通らないでしょ?
const STR = "str";
const ABC: STR = STR;
これ通らないでしょ?
const STR = "str";
const ABC: STR = STR;
598デフォルトの名無しさん
2017/04/13(木) 00:27:33.33ID:IFJ42qsr >>597
そりゃ二行目がストリングリテラルじゃないからね
そりゃ二行目がストリングリテラルじゃないからね
599デフォルトの名無しさん
2017/04/13(木) 00:33:01.65ID:rVYtPk7E600デフォルトの名無しさん
2017/04/13(木) 00:34:18.77ID:IFJ42qsr なにがやりたいのかよく解らんが
const STR = "str";
const ABC1 = STR;
const ABC2:”str” = ABC1;
type STRT=”str”;
const ABC3:STRT=STR;
全部通るよ
const STR = "str";
const ABC1 = STR;
const ABC2:”str” = ABC1;
type STRT=”str”;
const ABC3:STRT=STR;
全部通るよ
601デフォルトの名無しさん
2017/04/13(木) 00:39:19.82ID:7ydi5nIB602デフォルトの名無しさん
2017/04/13(木) 00:40:44.33ID:rVYtPk7E603デフォルトの名無しさん
2017/04/13(木) 00:44:07.45ID:7ydi5nIB 変数の型の参照なんて初歩の初歩なんだが教えてやるまい
604デフォルトの名無しさん
2017/04/13(木) 01:00:49.62ID:IFJ42qsr605デフォルトの名無しさん
2017/04/13(木) 01:13:36.05ID:rVYtPk7E const STR = "str";
type STRT = "str";
const ABC3: STRT=STR;
"str"を2回書かずにABC3が作れればそれでいいんだけど。
type STRT = "str";
const ABC3: STRT=STR;
"str"を2回書かずにABC3が作れればそれでいいんだけど。
606デフォルトの名無しさん
2017/04/13(木) 01:20:51.05ID:IFJ42qsr607デフォルトの名無しさん
2017/04/13(木) 06:09:08.50ID:32cPtkAw type STRT = typeof STR
608デフォルトの名無しさん
2017/04/13(木) 08:01:19.65ID:rVYtPk7E すまん、確かに思い違いしていたようだ。ありがとう。
609デフォルトの名無しさん
2017/04/13(木) 13:00:24.68ID:XE18llYI 恥ずかしか
610デフォルトの名無しさん
2017/04/13(木) 20:33:25.78ID:IFJ42qsr 認めて謝って感謝してるだけ立派だよ
611デフォルトの名無しさん
2017/04/16(日) 20:56:40.61ID:nOhMz2bP TypeScriptでExpressを使う場合について教えてください。
express-generatorなどのサンプルコードだと new Error したオブジェクトにstatusを
突っ込んで返していたりしますが、ここ、TypeScript的にはどうするのが普通でしょう?
みなさん自前でErrorのサブクラスを定義しているんでしょうか?あるいはどこかに
定番のものがあったりするんでしょうか?
express-generatorなどのサンプルコードだと new Error したオブジェクトにstatusを
突っ込んで返していたりしますが、ここ、TypeScript的にはどうするのが普通でしょう?
みなさん自前でErrorのサブクラスを定義しているんでしょうか?あるいはどこかに
定番のものがあったりするんでしょうか?
612デフォルトの名無しさん
2017/04/16(日) 22:51:14.41ID:SqhlDt4o 「どうでもいい」が普通じゃない?
そんなもんエラーハンドラで受けて適当にトレースとエラーメッセージ出したら終わりなんだから
型なんぞ要らん
手段と目的を履き違えるな
そんなもんエラーハンドラで受けて適当にトレースとエラーメッセージ出したら終わりなんだから
型なんぞ要らん
手段と目的を履き違えるな
613デフォルトの名無しさん
2017/04/16(日) 23:30:20.32ID:R4TJTEcK614デフォルトの名無しさん
2017/04/17(月) 00:09:50.93ID:CyuLkfZA そういうもんですかね?
エラーを表示するだけとは言ってもstatusは正しくセットしなきゃならないわけで、
TypeScriptを使う以上そこも型安全にやりたいってのは自然だと思うんですが。
そこだけtslintの警告をネグるのも気持ち悪いし。
エラーを表示するだけとは言ってもstatusは正しくセットしなきゃならないわけで、
TypeScriptを使う以上そこも型安全にやりたいってのは自然だと思うんですが。
そこだけtslintの警告をネグるのも気持ち悪いし。
615デフォルトの名無しさん
2017/04/17(月) 00:24:52.52ID:GVmJ+xSa アプリケーションの仕様としてエラー用のクラスを定義します。Errorのサブクラスだったり新規に自前のクラスを用意するかはケースバイケース。
当然途中で変わることもあり得ます。その際はきちんと他のメンバーと情報共有します。
当然途中で変わることもあり得ます。その際はきちんと他のメンバーと情報共有します。
616デフォルトの名無しさん
2017/04/17(月) 07:32:40.57ID:k0Nquy2H 自分は簡単なアプリではHttpErrorみたいなクラスを定義して使ってる。
もっと複雑なアプリだと、業務エラーのコードとHTTPのエラーコードで
もう一階層作ったりもするけど。
だが、これが推奨なやり方なのかは分からん。俺も知りたい。
もっと複雑なアプリだと、業務エラーのコードとHTTPのエラーコードで
もう一階層作ったりもするけど。
だが、これが推奨なやり方なのかは分からん。俺も知りたい。
617デフォルトの名無しさん
2017/04/17(月) 08:40:01.39ID:CyuLkfZA ありがとうございます。
statusというプロパティにステータスを返すのは決まっているんだからどこかに
出来合いのものがあるかと思ったんですが、やっぱり自前なんですね。
statusというプロパティにステータスを返すのは決まっているんだからどこかに
出来合いのものがあるかと思ったんですが、やっぱり自前なんですね。
618デフォルトの名無しさん
2017/04/20(木) 11:26:28.02ID:T7Zz78Cb npm linkを駆使してtypescriptでビジネスロジックを外部モジュールにしてるんだけど
tsc -wで自動コンパイルはできるんだけど
定義ファイルも同時に生成するコマンドオプションってないかな?
tsc -wで自動コンパイルはできるんだけど
定義ファイルも同時に生成するコマンドオプションってないかな?
619デフォルトの名無しさん
2017/04/20(木) 11:42:22.36ID:T7Zz78Cb >>618
すんません -w -dですね。ホント申し訳ない
すんません -w -dですね。ホント申し訳ない
620デフォルトの名無しさん
2017/04/21(金) 21:22:59.73ID:Uj6lwvRH TypeScriptで動的なキャストみたいなことってできるんでしょうか?
// どこかで定義されたclass
class X {}
interface AX extends X {
a: string;
}
func(x: X) {
if ( xが a: string というプロパティを持っていれば ) {
// ここではxをAXとして扱いたい
}
}
// どこかで定義されたclass
class X {}
interface AX extends X {
a: string;
}
func(x: X) {
if ( xが a: string というプロパティを持っていれば ) {
// ここではxをAXとして扱いたい
}
}
621デフォルトの名無しさん
2017/04/22(土) 00:25:56.48ID:NysYFg8M622デフォルトの名無しさん
2017/04/22(土) 10:55:16.81ID:scznilxz >>621
ありがとうございました。うまくいきました。
ありがとうございました。うまくいきました。
623デフォルトの名無しさん
2017/04/26(水) 12:25:16.92ID:mOputr8e f8appのコード読んでんだけど
flowって驚くほどtypeScriptと似てるね。
んでReduxのアクションな書き方が参考になる。
type ParseObject = Object;
export type Action =
{ type: 'LOADED_ABOUT', list: Array<ParseObject> }
| { type: 'LOADED_NOTIFICATIONS', list: Array<ParseObject> }
| { type: 'LOADED_MAPS', list: Array<ParseObject> }
コレ普通にtypeScriptでも使えた。
interface宣言だとこういう書き方できなけどtype宣言だとできんのね。
flowって驚くほどtypeScriptと似てるね。
んでReduxのアクションな書き方が参考になる。
type ParseObject = Object;
export type Action =
{ type: 'LOADED_ABOUT', list: Array<ParseObject> }
| { type: 'LOADED_NOTIFICATIONS', list: Array<ParseObject> }
| { type: 'LOADED_MAPS', list: Array<ParseObject> }
コレ普通にtypeScriptでも使えた。
interface宣言だとこういう書き方できなけどtype宣言だとできんのね。
624デフォルトの名無しさん
2017/04/27(木) 14:10:54.61ID:2oprloyo いやーTypeScriptって本当にいいものですよね
恥ずかしいソース書いてもコンパイルすればそれなりの形になってますし
全ソースが1つにまとまったjsファイルを見るとカタルシスを覚えます
javascriptを扱うのに最高の言語です
恥ずかしいソース書いてもコンパイルすればそれなりの形になってますし
全ソースが1つにまとまったjsファイルを見るとカタルシスを覚えます
javascriptを扱うのに最高の言語です
625デフォルトの名無しさん
2017/04/27(木) 16:28:37.55ID:a+4IBLmk 開発用と納品用でコードわけられるとかありがたい
626デフォルトの名無しさん
2017/04/27(木) 17:45:10.06ID:/9P4GBtP minifyが出来なくて悩んでおります。
Targetをes5にしてもエラーが出る。
Targetをes5にしてもエラーが出る。
627デフォルトの名無しさん
2017/04/28(金) 08:31:59.89ID:IMlkcp1b >>626
結局該当箇所っぽいところの構造を変えて解決した
case 'Text':
{
let text: Text;
/* ごちゃごちゃした処理*/
text = {
type: 'Text',
value: node.value,
cache: nodeCache
};
return text;
}
ってなってるところで
なぜがtextという変数がminifyで消えずに残っていてエラーになっていたところ
case 'Text':
{
// let text: Text; <―削除
/* ごちゃごちゃした処理*/
let text:Text = {
type: 'Text',
value: node.value,
cache: nodeCache
};
return text;
}
ってしたら治った。
結局該当箇所っぽいところの構造を変えて解決した
case 'Text':
{
let text: Text;
/* ごちゃごちゃした処理*/
text = {
type: 'Text',
value: node.value,
cache: nodeCache
};
return text;
}
ってなってるところで
なぜがtextという変数がminifyで消えずに残っていてエラーになっていたところ
case 'Text':
{
// let text: Text; <―削除
/* ごちゃごちゃした処理*/
let text:Text = {
type: 'Text',
value: node.value,
cache: nodeCache
};
return text;
}
ってしたら治った。
628デフォルトの名無しさん
2017/04/28(金) 09:00:40.63ID:IMlkcp1b すいませんminifyの件ですが一番の問題は
外部ライブラリとして別にパッケージを作ってnpm linkしていたんですが
その外部ライブラリのtsconfigの設定でtargetをes2015にしていたのが原因のようです。
npm上で公開してるライブラリってes2015のものとes5のものが混ざってるんですかね?もしそうならminifyのとき問題でそう。
そろそろブラウザもes2015に対応してきたし外部ライブラリもes2015でいいんじゃないかと思いましたがまだまだes5のほうがいいんですかねー
外部ライブラリとして別にパッケージを作ってnpm linkしていたんですが
その外部ライブラリのtsconfigの設定でtargetをes2015にしていたのが原因のようです。
npm上で公開してるライブラリってes2015のものとes5のものが混ざってるんですかね?もしそうならminifyのとき問題でそう。
そろそろブラウザもes2015に対応してきたし外部ライブラリもes2015でいいんじゃないかと思いましたがまだまだes5のほうがいいんですかねー
629デフォルトの名無しさん
2017/04/28(金) 15:19:33.29ID:ZmVIrkLy Announcing TypeScript 2.3
https://blogs.msdn.microsoft.com/typescript/2017/04/27/announcing-typescript-2-3/
https://blogs.msdn.microsoft.com/typescript/2017/04/27/announcing-typescript-2-3/
630デフォルトの名無しさん
2017/04/28(金) 21:52:24.09ID:CfPEmNk9 >>628
ちゃんと設定すれば、TypeScriptが変換してくれるんじゃないの?
ちゃんと設定すれば、TypeScriptが変換してくれるんじゃないの?
631デフォルトの名無しさん
2017/04/29(土) 00:20:26.49ID:Ix6JNrOr >>630
targetをes5にしてlibに”dom”と”es2017”を設定したら
ちゃんとminifyもできつつasync await とかobject.assaignとか使えました。
typescriptの問題というよりuglify-jsの問題ってことすね。
targetをes5にしてlibに”dom”と”es2017”を設定したら
ちゃんとminifyもできつつasync await とかobject.assaignとか使えました。
typescriptの問題というよりuglify-jsの問題ってことすね。
632デフォルトの名無しさん
2017/04/29(土) 08:40:51.51ID:fFSdol5k633デフォルトの名無しさん
2017/04/29(土) 09:01:35.78ID:fFSdol5k アンインストールしたらVSでtsファイル開いても識別子の色分けとかインテリセンスが出てこなくなってVSぶっ壊れたわ
再インストールだなこりゃ
再インストールだなこりゃ
634デフォルトの名無しさん
2017/04/29(土) 09:05:24.76ID:fFSdol5k 2.3アンインストール後に再度2.3インストールしてもぶっ壊れたまま
迂闊に入れないほうがいいなこれ
迂闊に入れないほうがいいなこれ
635デフォルトの名無しさん
2017/04/29(土) 14:53:43.74ID:D/W8thCK 馬鹿には無理
636デフォルトの名無しさん
2017/04/30(日) 09:24:14.29ID:V5NYhrdd 不細工ハゲが偉そうに
637デフォルトの名無しさん
2017/04/30(日) 11:46:36.73ID:A3RU6CWl 不細工じゃねーし!
638デフォルトの名無しさん
2017/04/30(日) 12:00:27.54ID:0Jw8BHIT 相対パスでimportしようとすると from ’../../lib/a’ と書くことが多いのですが
..を何とかしようと思いtsconfigでbaseUrlを設定したところ
from ‘lib/a’とかけるようになって素敵だったんですが
生成したjs側で同じように相対パスを使わない方法にできずjs側からimportできなくなりました。
どうすればいいんですかね
..を何とかしようと思いtsconfigでbaseUrlを設定したところ
from ‘lib/a’とかけるようになって素敵だったんですが
生成したjs側で同じように相対パスを使わない方法にできずjs側からimportできなくなりました。
どうすればいいんですかね
639デフォルトの名無しさん
2017/04/30(日) 12:07:35.75ID:VPr4LyhY deployしてみ
640デフォルトの名無しさん
2017/04/30(日) 13:53:10.60ID:bwYTEyCy おい、>>637に突っ込めよ!
641デフォルトの名無しさん
2017/04/30(日) 14:18:46.56ID:uAfPQWLU ハゲに付ける薬なし
642デフォルトの名無しさん
2017/05/01(月) 13:56:45.49ID:1hc/XS6U jsonのデシリアライズ等で得られた任意のオブジェクトが指定のinterfaceに適合するかどうか
簡単に判定する方法ってないでしょうか?
実行コストがかかるのはしょうがないので、npmのライブラリでもあれば助かります。
簡単に判定する方法ってないでしょうか?
実行コストがかかるのはしょうがないので、npmのライブラリでもあれば助かります。
643デフォルトの名無しさん
2017/05/01(月) 14:12:45.68ID:y6q+iQAV 実行時に型情報は取得できないので無理
644デフォルトの名無しさん
2017/05/01(月) 14:56:45.23ID:dX7m944z >>642
俺は各interfaceの定義にtypeを入れてる。
俺は各interfaceの定義にtypeを入れてる。
645デフォルトの名無しさん
2017/05/01(月) 15:43:26.17ID:FD8bdV22 >>642
あーなるほどtypesciptのinterface要件を満たしてるかチェックするライブラリかー。
interfaceに対するメタプログラミングができる仕組みってtypescript側に用意されてんのかな
あーなるほどtypesciptのinterface要件を満たしてるかチェックするライブラリかー。
interfaceに対するメタプログラミングができる仕組みってtypescript側に用意されてんのかな
646デフォルトの名無しさん
2017/05/01(月) 16:42:03.86ID:y6q+iQAV ランゲージサービスから情報引っ張ってコード生成するまでやればできる
647デフォルトの名無しさん
2017/05/01(月) 18:22:52.40ID:s/VndsAg648デフォルトの名無しさん
2017/05/01(月) 22:27:57.85ID:1hc/XS6U >>643-647
回答ありがとうございます。
外部から入手したany型のオブジェクトに対して、一度型チェックしたらTypeGuardの下で
扱えたら便利だと思ったんですが、そう単純なものはなさそうですね。
interface毎にUser-Defined Type Guard Functionてのを用意するのが今のところ
いちばんシンプルですかね。
回答ありがとうございます。
外部から入手したany型のオブジェクトに対して、一度型チェックしたらTypeGuardの下で
扱えたら便利だと思ったんですが、そう単純なものはなさそうですね。
interface毎にUser-Defined Type Guard Functionてのを用意するのが今のところ
いちばんシンプルですかね。
649デフォルトの名無しさん
2017/05/01(月) 23:04:54.13ID:FD8bdV22650デフォルトの名無しさん
2017/05/02(火) 00:15:01.17ID:79+IkLPk JSON限定でいいならJSON Schema生成するだけじゃね
651デフォルトの名無しさん
2017/05/05(金) 00:50:33.95ID:oXL5lOIH webpackでtypescript使う時にts-loaderがtypeRootsオプションを認識してくれないような。
自作の定義ファイルを読みに行ってくれない。
結局nodes_modules/@types/においたらうごくんだけど。なんだかなぁ
自作の定義ファイルを読みに行ってくれない。
結局nodes_modules/@types/においたらうごくんだけど。なんだかなぁ
652デフォルトの名無しさん
2017/05/05(金) 10:24:07.07ID:E/UcmmKD -g
653デフォルトの名無しさん
2017/05/07(日) 12:47:49.44ID:tRHTfDHo redux のreducer書く時型付きじゃないと死ぬ。
素のjsでよく書ける人いるなぁ
素のjsでよく書ける人いるなぁ
654デフォルトの名無しさん
2017/05/10(水) 22:53:30.65ID:TahTqR8d655デフォルトの名無しさん
2017/05/11(木) 06:23:41.84ID:6GcWGmCe JSON Schemaの方が表現力がずっと高いから、
実用的に意味があるのは後者だろうね
型だけなら全部空文字と0とfalseでもいいんだから
実用的に意味があるのは後者だろうね
型だけなら全部空文字と0とfalseでもいいんだから
656デフォルトの名無しさん
2017/05/11(木) 06:40:52.39ID:Uo4oHcSP JSON Schemaからのdts生成は既存のツールがいくつかあるみたいだな
逆はバリデーションとしてはほぼ無意味かと
逆はバリデーションとしてはほぼ無意味かと
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国、日本行き“50万人”キャンセル 渡航自粛でコロナ禍以来最大 [お断り★]
- 高市首相答弁を“引き出した”立民・岡田克也氏が改めて説明「なぜ慎重な答弁をされなかったのか。非常に残念に思っている」 ★5 [ぐれ★]
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★4 [BFU★]
- 【速報】日本産牛肉の対中国輸出再開協議が中止 ★2 [おっさん友の会★]
- 毛寧(もう・ねい)報道官「中国に日本の水産品の市場は無い」 高市首相の国会答弁に「中国民衆の強い怒り」 [ぐれ★]
- 【外交】前台湾総統・馬英九氏、高市首相発言に「台湾を危険にさらす」台湾海峡の問題は「両岸の中国人が自ら話し合うべき」 [1ゲットロボ★]
- 【愛国者速報】フィフィ、中国の“日本産水産物輸入停止”措置に私見「中国依存しないとやっていけない企業は考えを改めて」 [856698234]
- 【ござる専🏡】風間🥷配信実況スレ🏯【風間いろは】
- 【速報】中国政府、ゲームを禁輸。原神やブルアカ、荒野行動が日本で影響 [347751896]
- 細川バレンタイン、高岡蒼佑(元祖ネトウヨの親玉)にブチギレ。 [242521385]
- 中国「私達が怒ってるのは日本の政治家に対してで、日本の観光客や日本企業はこれまで通り歓迎する。これこそが大国としての余裕」 [377482965]
- 横浜市職員が公文書偽造と廃棄!市民に「お前が虚偽の申告をしたと言え」と命令😨 [369521721]
