【问题标题】:Is there a precompiler for JavaScript like Sass?是否有像 Sass 这样的 JavaScript 预编译器?
【发布时间】:2015-09-09 01:40:47
【问题描述】:

早上好,有没有像 Sass for CSS 这样的 JavaScript 预编译器解决方案?

我需要的唯一功能是部分预编译(以减少 js 文件)和文件的自动压缩。

我在 Google 上搜索了 Coffeescript,但这不是我想要的,因为我不想要不同的语法..

如果有像 Koala for Sass 这样的软件将不胜感激,但即使从命令行 (我在 Windows 上) 也可以,提前谢谢!

PS:我的意思是部分:

@import "file.js"

工具找到这个并将其替换为文件的内容,创建一个新文件,可能在我指定的另一个文件夹中(就像我说的,像考拉)

【问题讨论】:

  • 我不想要不同的语法??那么,您想要具有相同语法的不同功能吗?那没有意义。 SASS 是一种不同于 CSS 的语法,SCSS 也是如此。听起来你只想要一个像 Gulp 或 Grunt 这样的任务运行器
  • 您肯定在寻找任务运行器,google Gulp!
  • “Partials”在谈论 JavaScript 时毫无意义。
  • (1)“不同的语法”:意味着不应该像coffeescript那样完全改变语法,而只是添加一些像scss这样的功能-(2)“partials”:像@import "file.js "

标签: javascript automation compression partials


【解决方案1】:

找到了 Andy Tran 对问题 "What are the HTML and JavaScript equivalents of Sass?" 的回答:

我敢肯定有很多选择,但我只听说过 CoffeeScript、TypeScript、Babel 和 LiveScript。

[...]

CoffeeScript 确实为某些内容创建了一些简写版本,旨在使其更易于阅读/编写,但在我看来,我发现它只是更加混乱。

Babel 是我拿起的第二个,我立刻喜欢上了它。通天塔 允许您编写较新版本的 EMCAScript(ES6、ES7),但 将其编译为普通的旧 JavaScript 以支持旧版本的浏览器 不支持的IE也支持。

TypeScriptLiveScript,我不太熟悉。不过,我听过很多 对 TypeScripts 的积极反馈,每个人都在推荐我 检查一下并使用它来代替 CoffeeScript!

希望对你有帮助!

【讨论】:

    【解决方案2】:

    当您说“预编译”时,您的意思是“连接和缩小”,是的,它们在技术上有所不同,因为“已编译”代码仍在 JS 中,但它们本质上是相同的。

    Google 有一个名为 Closure "Compiler" 的工具,这可能就是您正在寻找的。​​p>

    【讨论】:

    • 是的,连接和 Sass 一样,所以使用 import 关键字
    【解决方案3】:

    Javascript 由您的浏览器直接解释,因此没有“部分预编译”的东西。

    您正在寻找的是像 GulpGrunt 这样的任务运行器,它可以启动一个任务(以及其他任务)来连接您的文件。

    这是concat task for Gulp

    【讨论】:

    • "Javascript 由您的浏览器直接解释,因此没有“部分预编译”的东西。" ..显然我没有要求直接在浏览器上执行此任务,而是在将文件放在服务器上(预编译)之前。但是我会接受答案,因为任务运行器可能是我需要的
    • 是的,我没看错,我只是说您不能“预编译”javascript 文件,因为它们将被浏览器按原样解释。这只是为了澄清“预编译”一词。如果你打算尝试 Gulp,你可以在这个项目上找到一个非常简单的 gulpfile(在本例中,coffeescript 编译):github.com/stephane-ruhlmann/mean-coffee-jade-template很高兴它对你有帮助。
    • @stephane-ruhlmann 你说你不能“预编译”javascript并且你在技术上是正确的,它不是在后端“编译”(C或Java的方式),但是有concat/min 和 compile 之间有一条细线……它们几乎是一回事。 Closure (Google) 甚至称自己为“编译器”,因为它基本上只是连接和缩小。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-03
    • 1970-01-01
    • 1970-01-01
    • 2012-10-14
    • 2014-07-12
    • 1970-01-01
    • 2013-08-04
    相关资源
    最近更新 更多