如何使用 jQuery 将 TypeScript 编译为 JavaScript,无需任何额外的库或框架(NPM 等)

How to compile TypeScript to JavaScript with jQuery, without any additional libraries or frameworks (NPM, etc.)

我有一个非常简单的单页仪表板,可以执行诸如获取天气、地铁警报等操作,并在我的机器上本地刷新它。它看起来像:

project/
  index.html
  jquery-3.3.1.min.js
  script.js

而且我想将其转换为 TypeScript。我将 script.js 移植到 TypeScript,但为了使用 jQuery 必须从 here 下载定义文件。我现在有:

project/
  index.html
  jquery.d.ts
  script.ts

我的 TypeScript 文件的前两行是:

/// <reference path ="./jquery.d.ts"/>
import * as $ from "jquery"

当我 运行 tsc *.ts 时,它成功编译了我的脚本,但是 resulting/compiled JavaScript 文件的前四行是:

"use strict";
exports.__esModule = true;
/// <reference path ="./jquery.d.ts"/>
var $ = require("jquery");

这在我的浏览器中失败了:

exports.__esModule = true; // Can't find variable: exports

我是一个非常弱的前端开发人员 HTML/JS/jQuery,所以我不确定从哪里开始 - 我做了一些谷歌搜索,但没有太多结果。

如果你是这个意思...

使用 declare var $: JQuery 如果定义了类型

否则使用declare vas $: any

如果您的编辑器 (f.e.VSCode) 支持脚本变量声明,请使用

{ 
 name: "$",
 type: JQuery (or any),
 ofReference: {
  scriptSrc: ["*jquery.js", "*jquery.min.js", "*code.jquery*"] 
 }
}