是否有可能运行在浏览器中打字稿编译器在浏览器transpiling TS到JS 100%.用例将实现运行100%的客户端在线打字稿IDE,它有一个"播放"按钮执行该项目.所以我需要将项目转换为JavaScript,以便浏览器执行代码.
我相信它应该是作为简单的加载相关的打字稿JS文件,创建正确的类的实例(编译器?),并调用一个或两个方法.
什么是适合装载在浏览器中编译器的库文件?TypeScript编译器API参考文档在哪里?我应该从哪里开始挖?
这不要求任何特定的工具,但是任何方式与这个特定的计算机语言要做到这一点,因而在题目.
我很好奇是否有一个TypeScript AST资源管理器,就像https://astexplorer.net/一样?!
为节点转换Typescript的最佳(实时?)方法是什么?
我正在使用WebStorm并在后台运行gulp
任务backend:watch
来监听更改.因此,当我在WebStorm中点击"保存"时,它确实将TS转换为JS并存储在/build
目录下.
我的方法效果很好,但是转换是耗时的 - 每次运行需要两到三秒,秒会变成分钟,依此类推.
有没有办法优化它,一个更好的选择?
//////////////////////////////////////////////
// Backend tasks
//////////////////////////////////////////////
const appSourceDir = path.join(dir, '/app');
const appSourceGlob = `${appSourceDir}/**/*.*`;
const appSourceRelativeGlob = 'app/**/*.*';
const appCodeGlob = `${appSourceDir}/**/*.ts`;
const appCodeRelativeGlob = 'app/**/*.ts';
const appFilesGlob = [appSourceGlob, `!${appCodeGlob}`];
const appFilesRelativeGlob = [appSourceRelativeGlob, `!${appCodeRelativeGlob}`];
const appBuildDir = path.join(dir, '/build');
gulp.task('backend:symlink', [], function (done) {
const appTargetDir = path.join(dir, '/node_modules/app');
// symlink for app
fs.exists(appTargetDir, function (err) {
if (!err) {
fs.symlinkSync(appBuildDir, appTargetDir, 'dir'); …
Run Code Online (Sandbox Code Playgroud)我发现了TypeScript,并安装了Visual Studio 2012 Plugin,下载了源代码并在引用我文档中的文件后运行了第一个示例:.ts
HTML
function Greeter(person) {
return "Hello, " + person + ".";
}
var user = "James Kent";
document.body.innerHTML = Greeter(user);
Run Code Online (Sandbox Code Playgroud)
然后继续在命令行编译代码,使用:
tsc greeter.ts
但我无法编译它,正如 Visual Studio 所说:
命令“tsc”无效。
在浏览了 TypeScript 网站后,我找不到任何有关如何使其工作的信息。谷歌搜索也没有产生相关结果。
我怎样才能让 TypeScript 工作?
更新:运行随源代码提供的任何示例只会在任何浏览器中显示一个空白页面。但是,示例在 TypeScript 网站上似乎运行良好。