- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我最近从使用手写编译脚本和 Google Closure Compiler 转向使用 Brunch,我或多或少被迫使用 UglifyJS。
我有配置选项
uglify:
mangle:
toplevel: true
eval: true
functions: true
compress: true
我的类使用正在构建的原型(prototype)风格。
即。
function Car() { }
Car.prototype.startEngine = function() { }
然后(c 在全局范围内并被调用一次)
var c = new Car();
car.startEngine();
添加 toplevel:true 配置选项会破坏 Car,但不会破坏任何原型(prototype)函数(即 startEngine)。
我不想更改我的类结构,但是我可以让 UglifyJS 修改这些函数名称吗?
谢谢:)
最佳答案
Uglify 没有能力破坏对象属性。但是,通过切换到带有变量的括号表示法,您也许可以更接近您正在寻找的内容。
function Car() { }
var startEngine = 'startEngine'; // could actually be any random string or number
Car.prototype[startEngine] = function() { }
var c = new Car();
car[startEngine]();
这依赖于您的第一个代码段和第二个代码段都可以访问 startEngine
变量,因此根据您的项目结构,您可能必须以等效方式重新声明变量或提出其他广告素材跨范围保持其值(value)的方法。
答案在Mangle nested classes and variables with uglifyjs提供更详细的解释。
关于javascript - 使用 UglifyJS (Brunch) 压缩 Object.prototype.functions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22909273/
我刚刚使用 brunch-with-brunch 框架开始了一个新的 brunch.io 项目(我只想要一个能够显示 native HTML/CSS/JS 的本地服务器)。 我自己创建了两个文件:位于
我正在使用 brunch.io,它运行良好。 我唯一不知道如何实现的是在构建之前进行清理。 例如,如果我 brunch build 它会创建源映射。如果我执行 brunch build --produ
我想包含 Bootstrap 3.0 的字形(又名,glyphicons-halflings-regular.woff、.ttf、.svg)的字体文件。 Bower 成功地将它们拉下来,我已将它们添加
让我们考虑 brunch-config.js 中的以下条目: joinTo: { "js/app.js": /^(web\/static\/js)/,
我是早午餐的新手,但是在尝试使用 sass-brunch 和 bootstrap-4.0.0-alpha.2 作为 npm 安装的模块进行设置时,我无法让它包含 bootstrap.scss。关于我做
如何从我的生产版本中排除我的测试目录? 我查看了文档,似乎找不到任何选项。 最佳答案 使用 overrides 用于覆盖的配置选项 files在生产或其他环境中。 关于brunch - 忽略早午餐生产
使用早午餐时,控制脚本/样式表的并置顺序的最佳实践是什么? 我的问题的一个简单版本涉及一个使用Twitter Bootstrap的应用程序,该应用程序需要jQuery。 Bootstrap要求首先加载
我的Brunch模板将我的所有代码编译为app.js,并将所有第三方依赖项编译为vendor.js(一种非常标准的方法)。我想对CSS进行同样的操作,但是它曾经可以工作,但是当我开始使用Bower时,
我需要在早午餐构建(手动构建或使用早午餐 watch )后运行系统脚本。有没有好的方法可以做到这一点? 最佳答案 另一种解决方案是安装 after-brunch NPM 包公开了一个配置点,您可以在其
已有答案here和 here ,但它们是关于使用 NPM 模块,而我的问题涉及同构内部代码,我想在 brunch/backbone 和 node/express 之间共享路由。但是,如果这是一个骗局,
我在 brunch@1.7.6 没有编译 bower_component css 文件时遇到问题。类似于 Separating app and vendor css in Brunch .只有 css
我正在开发一个用早午餐构建的应用程序。我想加载一些*供应商提供的 javascript 作为模块,以便我可以 require它们在我的代码中,而不是依赖于全局变量。 有没有办法做到这一点,而无需将所有
前端开发新手,我正在尝试构建一个基于主干的带有早午餐的网络应用程序。一切都很顺利,直到我尝试使用名为 node-xmpp-client 的节点模块。 。该模块有一个浏览器化版本:node-xmpp-b
所以我得到了这个配置文件: exports.files = { javascripts: { joinTo: { 'vendor.js': /^(?!app)/, // Fil
我正在尝试使用 Pure.css在我的申请中。我已经使用 npm 安装了它并且有我的 brunch-config.js像这样配置: stylesheets: { joinTo: { 'ap
我想知道如何使用源映射调试我的 brunch.io (ember) 应用程序? 我的源映射由 IntelliJ Webstorm 生成 - 但我如何将它们与 brunch.io 构建过程一起使用? 最
我想在 Brunch 的 joinTo 配置中排除 View 文件夹内的文件 mapdata.coffee。 我尝试的是 'javascripts/app.js':/^app(\/|\\)(?!(te
我正在构建一个 ember 应用程序,发现我经常需要重新启动 brunch watch -s命令,更新我的应用程序。虽然早午餐会在每次更改时重新编译,但只有在我重新启动命令时更改才会生效。 难道我做错
我还在了解早午餐的情况。我已经成功构建和测试了一个基本类和 jasmine 规范。 现在是时候开始导入其他依赖项以供使用了,第一个是 jQuery 并使 $ 可用。这些库已配置并下载到 bower_c
我已将 Brunch 以及 Coffee Script 安装到我的工作目录中。 安装顺利。 当我尝试使用以下命令运行本地服务器时: gorteks$ brunch watch --server 我得到
我是一名优秀的程序员,十分优秀!