问题标签 [transpiler]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2856 浏览

javascript - 如何在 JSX/TSX 中使用 TypeScript 的 transpile 函数

假设我有一个 TypeScript 1.6 文件,其中包含这一行,其中包含 JSX (TSX):

当我使用 TypeScript 1.6(通过 ntypescript npm 包安装)在命令行上编译它时:

它产生预期的输出:

但是,当我尝试使用 TypeScript JS API 做同样的事情时,我无法让它工作。我运行node然后运行这些命令:

我得到的结果是:

此外,d是一个空数组,因此没有报告诊断消息(即错误)。是什么赋予了?

0 投票
1 回答
849 浏览

javascript - How to use transpiled ES6 in ES5?

I'm creating some classes in ES6 and transpilling it into ES5. But I can't access the objects via ES5.

The ES6 files

And

The one which will be transpiled

The transpiled result

So how can I use Dom or Util in normal ES5(console or js file) because I get undefined variable?

Thanks.

0 投票
0 回答
478 浏览

haskell - 从 GHCJS 客户端到 Yesod/Snap/Servant 的类型安全 RPC 调用示例

我有两个有关 RPC 调用的相关问题Yesod/Snap/Servant

  1. 假设我在服务器上有一个函数,用 Haskell 编写,由 GHC 编译:

    add x y = x+y+42

怎么能:

  1. 我从客户端调用这个函数(客户端也是用 Haskell 写的,用 编译GHCJS),
  2. 在服务器上执行函数,
  3. 将结果返回给客户端?

以类型安全的方式执行所有这些操作?

因此,例如,我想在客户端上写这样的东西:

这样 add 函数就会在服务器上执行。

Yesod/Snap/Servant在服务器上使用 GHCJS 和在客户端使用 GHCJS的最简单方法是什么?

2)同样,我想写一个“函数”: getPhaseOfMoon :: IO Phase它在服务器上运行,我想以getPhaseOfMoon类型安全的方式从客户端调用。

这样我就可以在客户端上写这个:

哪个

  1. 去服务器
  2. 服务器查询月相
  3. 服务器返回Phase给客户端
  4. 客户端在 JavaScript 控制台中显示月相。

问题

我怎样才能用Yesod/Snap/Servant(服务器)+ GHCJS(客户端)做到这一点?

0 投票
2 回答
596 浏览

ember.js - Ember Cli - 在 ember-cli-build 中转换供应商 ES6 依赖项?

我正在使用 Ember Cli 编写一个 Ember.js 应用程序,并且我想包含一个非 bower 依赖项——基本上是我vendor文件夹中的一个依赖项。

这样做的说明是告诉我将以下行添加到我的ember-cli-build.js文件中:

这对于普通的 ES5 风格的依赖项来说可以正常工作,但是如果我想添加一个用 ES6 编写的依赖项怎么办?

现在它只是将它传递给浏览器而不用触及,这会产生如下错误:

因为我的 ES6 风格的依赖项使用以下语法:

我猜我需要告诉 ember-cli-build 在将它传递给浏览器之前转换这个特定的依赖项,但我该怎么做呢?

谢谢

0 投票
1 回答
536 浏览

node.js - 如何在浏览器中将 ES6 转换为 ES5 而不会膨胀以进行生产?

是否有任何可用的转译器配置/选项可以转译 ES6,例如在生产网站上真正可用的 ES5 的 for-of-loops?我发现最好的方法是包含一个额外的 polyfill,这会导致原版 ES5 中相同功能的文件大小至少翻倍。或者这个转译器的想法只是为 nodejs 的东西编写未来的 esnext?

0 投票
3 回答
679 浏览

angularjs - 有没有办法让 TypeScript 在客户端的 Plunkr 中转译?

对于我的团队来说,我们处于项目之间,但考虑到 Angular 2 仍在烘烤中,我正在对 TypeScript 以及如何使用 Angular 1.x 进行一些基础研究。我通常使用 Plunkr 制作小型原型,这样我们就可以在技术演示和其他东西中看到某些东西是如何工作的,并在现场将其弄乱。

但是,问题是我试图在这个 plunker中进行一个非常基本的 Angular 1.x + TS 设置,但是在让它正常工作时遇到了问题。我认为一些问题是客户端转译,但我敢肯定这不是我唯一搞砸的事情。具体来说...

查看代码:

我从这个 StackOverflow 问题中得到了客户端转换,但该问题的解决方案是“只需在 Visual Studio 中执行!” 或“转换你的 TypeScript,然后将 JavaScript 插入 Plunkr”,这对我不起作用,因为我的团队正在考虑首先转换到 TypeScript——我们需要能够使用 typescript,因此原型可以提供帮助我们了解它是如何工作的。此外,该问题指出,转译部分实际上已经过时了。

问题:首先,是否有更新的客户端 TypeScript-to-JavaScript 转译器,我可以在我的原型 plunker 中链接到该转译器?其次,关于如何让 Angular 1 与 TypeScript 一起工作,是否有更好的资源可供参考?我很难找到任何关于如何使 TypeScript 与 Angular 1.x 一起工作的内容......

0 投票
1 回答
943 浏览

javascript - 使用 babel es2015 运行 mocha 无法正常工作

我正在努力让 Babel 6 为我工作。我在日常工作(用于 React 开发)中非常成功地使用了 5,但 6 似乎并没有像预期的那样与 Mocha 集成。

我有这些devDependencies、脚本和 babel 配置:

这是我的测试代码:

...源代码有:

但是,在运行时,我进入foo is not defined了构造函数的第一行。有趣的是,如果我直接编译代码并通过节点 CLI 直接调用它,它工作正常。以下是babel-cli为文件生成的内容:

如何正确运行 mocha 来转换测试及其导入的任何内容?

我尝试过的事情:

  • 将 babel 配置移动到.babelrc文件中;没有区别。
  • 使用-r babel-core/register而不是--compilers也不起作用。

更新

这是有趣的。我决定console.log(ObjectBeingTested.toString())在导入后做一个看看摩卡得到了什么;这是它的输出:

请注意,两条取消引用的行完全丢失了。

更新 2

这个问题与摩卡无关;我可以重现导入模块的转换方式与批量转换的方式不同。

0 投票
2 回答
6599 浏览

node.js - 如何使用 babel CLI 编译文件

我正在尝试es6使用 babel CLI 编译一个简单的文件

鉴于以下细节:出了什么问题?

换句话说:我放入 ES6,然后取出 ES6(尽管间距略有不同,并添加了分号)。我期待看到导入转换为要求,并看到我的反引号消失。

那就是:我想要 ES5 out

我需要做些什么不同的事情?

0 投票
0 回答
240 浏览

javascript - 如何使用此目录结构生成带有 babel 的源映射?

gulp 任务在./tasks文件夹中,而不是./- 构建是在./dist文件夹中生成的,应该指向./path/to/src.js.

dist 文件夹与根项目文件夹具有相同的结构。(即:./server/core/routes.js例如./dist/server/core/routes.js,与.maps文件一起编译时最终会出现。

0 投票
1 回答
354 浏览

javascript - 来自字符串的打字稿kendo-ui调用方法

我在带有打字稿的kendo-ui(html)的网格中使用dropdownlist

问题是我必须在字符串中调用一个函数

我应该如何从字符串中定义的打字稿中调用“methodToBeCalled”。我尝试了这些组合,但没有一个有效