microsoft / microsoft/TypeScript

can't emit import when overwrite declare

オープン
#28,012 コメント 2 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

Bug Domain: Error Messages
主要言語
Go
スター
111k
フォーク
14.3k
平均マージ
1日 19時間
マージ済み PR(30日)
117

説明

TypeScript Version: 3.2.0-dev.201xxxxx

Search Terms:

Code

import hashSum = require('hash-sum');
import shortid = require('shortid');

declare function shortid(): string
declare function hashSum(input): string

export function hashAny(seed?, ...argv): string
{
	if (!seed)
	{
		seed = shortid()
	}
	else if (typeof seed !== 'string')
	{
		seed = hashSum(seed)
	}

	return String(seed)
}

export default hashAny;

Expected behavior:

output js file include

const hashSum = require("hash-sum");
const shortid = require("shortid");

Actual behavior:

miss require hash-sum, shortid

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
function hashAny(seed, ...argv) {
    if (!seed) {
        seed = shortid();
    }
    else if (typeof seed !== 'string') {
        seed = hashSum(seed);
    }
    return String(seed);
}
exports.hashAny = hashAny;
exports.default = hashAny;

Playground Link:

Related Issues:

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

ソースファイルもテストも指定されていません。提供された imports と declarations を使用して TypeScript 3.2 の動作を再現し、その後、上書きされた declarations に対するコンパイラの CommonJS import 出力を追跡してください。生成された JavaScript に hash-sum と shortid の両方に対する require 呼び出しが含まれ、示されている実行時の動作が維持されていれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
typescript
領域
compilers
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
32/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。