问题标签 [uglifyjs]
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.
javascript - uglified 代码不会写入文件
我想遍历目录并获取 .js 文件并使用 uglifyjs 和 node.js 进行丑化,但我的代码存在一些问题。下面是我的代码:
问题是:如果我评论 writeFileSync 并运行上面的代码,它将创建目录,并在取消评论 writeFileSync 并运行后再次将缩小的代码写入文件,我无法找出我的代码的问题.. 可以任何人请帮帮我。
javascript - 如何区分由不同优化器优化的 javascript
我在我的一个项目中使用RequireJS 优化器,默认情况下,它使用 UglifyJS。'anim' is undefined
但是,在 IE 和 Opera 上运行时遇到错误 ( )。切换到闭包编译器而不进行其他配置更改,只需坚持默认设置,问题就消失了。
如何获得这两个工具产生的优化输出的有效差异?
我并不是要比较两者的能力,无论哪种方式我都可以,但这可能有助于指出其中一种或另一种的错误。
jquery - 在 grunt.js 中,在 uglify "jquery" 和 "blockui" 期间出现错误 "Unexpected Character `?`"
如果我在 grunt 中“最小化”jquery 和 blockui 文件(带有 uglify.js),我会收到以下错误
我该如何解决这个问题?这是一个已知问题吗?
提前谢谢。
javascript - Uglify-JS 错误:连接然后缩小 select2 时出现意外字符“”
我将select2连接到我的其他 javascript 文件,如下所示:
但是,我发现了一个问题,即只有在连接之后才会在前面加上一个空白字符select2
,这会导致 UglifyJS 中的解析错误。如果我转到select2
连接文件的开头并按退格键,则会删除一个空字符并且缩小工作正常。
到底是怎么回事?我怎样才能解决这个问题?
node.js - Nodejs + 连接资产管理器 + uglifyJs
我正在使用 nodejs(v0.8.2) 和 connect-assetmanager 中间件来使用 uglifyJs(v1.3.2) 捆绑和缩小我的 js 文件。我的配置就像`
`
但是当我启动应用程序时,出现了错误:
在新的 JS_Parse_Error (E:\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\node_modules\uglify-js\lib\parse-js.js:263:22) 在 js_error (E:\work\siteexV2\IDE \node_modules\connect-assetmanager-handlers\node_modules\uglify-js\lib\parse-js.js:271:15) 在 parse_error (E:\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\node_modules\uglify -js\lib\parse-js.js:367:17) 在 Object.next_token [作为输入] (E:\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\node_modules\uglify-js\lib\parse -js.js:613:17) 在下一个 (E:\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\node_modules\uglify-js\lib\parse-js.js:718:37) 在 Object.在 Array.uglifyJsOptimize [as 0] (E:\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\node_modules\uglify-js\lib\parse-js.js:704:19)\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\lib\handlers.js:57:26) 在修改 (E:\work\siteexV2\IDE\node_modules\connect-assetmanager\lib\assetmanager.js:275 :42) 位于 Function.module.exports.generateCache.settings.forEach.userAgentMatches 的 module.exports.manipulate (E:\work\siteexV2\IDE\node_modules\connect-assetmanager\lib\assetmanager.js:281:7)。 forEach.content (E:\work\siteexV2\IDE\node_modules\connect-assetmanager\lib\assetmanager.js:231:11)forEach.content (E:\work\siteexV2\IDE\node_modules\connect-assetmanager\lib\assetmanager.js:231:11)forEach.content (E:\work\siteexV2\IDE\node_modules\connect-assetmanager\lib\assetmanager.js:231:11)
我尝试在命令行中使用 uglifyJs 缩小这些 js,所有文件都可以成功缩小。请任何知道出了什么问题的人给我一些帮助,这让我发疯!非常感谢
javascript - 如何使用 RequireJS 优化器删除评论?
我正在尝试从优化的脚本文件中删除版权注释。我们将 RequireJS 与默认的 UglifierJS 一起使用。我查看了 Uglifier,它本身有一个名为-nc
or的标志--no-comments
,但 RequireJS 似乎不允许您在构建配置文件中设置该选项。有没有办法做到这一点?
ruby - 1.8 不支持的编码选项:r:UTF-8
我正在尝试使用 Ruby Uglifier gem,但它给出了这个警告并且输出的 javascript 没有被缩小:
/usr/lib/ruby/gems/1.8/gems/uglifier-1.2.7/lib/uglifier.rb:51:警告:1.8 不支持编码选项:r:UTF-8
javascript - 缩小 NodeJS 中使用的代码是否有意义?
我想知道,由于 Clojure Compiler 和 UglifyJS 不仅优化了代码的大小,而且还优化了性能(尽管我认为大小是主要优先事项),如果我的 node.js 应用程序被缩小,它会运行得更快吗?我知道这可能取决于应用程序,但我一般都在问这个。
ruby-on-rails - 如何使用 Uglifier 和资产管道进行 JS 预处理?
我正在尝试做的(我不确定是否可能)是使用 UglifierJS 使用它的 AST 'mangle' 选项对象来预处理 JS 文件。有一个选项 {defines: { DEVMODE : true}} 可以传递给 UglifyJS:https ://github.com/mishoo/UglifyJS#use-as-a-code-pre-processor
与 Rails 一起使用的 Uglify GEM 基本上使用相同的,“定义”不应该是 GEM 实现的一部分,但我对其进行了硬编码以更改 gem 的几行,因此它将作为一个选项包含在内。
无论如何,关键是我如何在开发中使用预处理方法,那么资产管道以这种方式传递 JS 文件?
javascript - 如何使用 uglifyjs / uglifyjs2 解析 walk 和 eval javascript 表达式
如何使用uglifyjs解析 javascript 表达式?虽然是一个优秀的库,但缺乏文档使得它更难理解!
这些链接在一定程度上帮助了我。
- https://groups.google.com/forum/?fromgroups=#!topic/uglifyjs/YjWjgl8Qm0c
- https://github.com/mishoo/UglifyJS/blob/master/tmp/instrument.js
现在我知道这是需要做的
- 解析生成 AST
- 创建自定义步行
- 翻译 AST
- 生成代码
- eval 生成的代码
这个对吗?还是我错过了什么?
一个带有walker代码的简单示例将非常有帮助和赞赏