【问题标题】:Setup NPM prepublish minify script设置 NPM 预发布缩小脚本
【发布时间】:2013-05-25 02:34:31
【问题描述】:

我想设置一个脚本,在我使用 NPM 发布之前缩小我的 Javascript 代码。

据我了解,这应该可以在package.json 中使用:

"scripts": {
    "prepublish": "somethingThatMinifies"
}

在这种情况下,什么工具最适合/最常用于缩小?

【问题讨论】:

    标签: npm minify


    【解决方案1】:

    有点晚了,但希望它仍然对某人有所帮助(比如我自己,他是通过 Google 搜索“预发布”来到这里的)。

    我相信uglifyjs 是最流行的压缩和压缩工具之一。

    你可以这样使用它:

    "scripts" : {
      "prepublish" : "uglifyjs -o myfile.min.js myfile.js"
    }
    

    只需确保将uglify-js 添加到您的devDependencies

    请参阅uglifyjs 了解选项以及有关其工作原理的更多信息。如果您的缩小过程变得过于复杂,您可以创建一个Makefile 并使用类似:

    "scripts" : {
      "prepublish" : "make minify"
    }
    

    【讨论】:

    • ./node_modules/.bin/ 在运行 npm 脚本时添加到路径中,因此您可以从第一个 prepublish 脚本中删除它。
    【解决方案2】:

    所以只是为了更新@mkretschek 答案,现在我们应该使用prepareprepublishOnly 在npm 发布包之前运行我们的缩小脚本,因为npm 4.0.0 prepublish 已被弃用。

    准备

    在打包之前的任何时间运行,即在 npm publishnpm pack

    期间

    仅预发布

    在准备和打包包之前运行,仅在 npm publish 上运行。


    那么我们的package.json 看起来像:

    "scripts" : {
      "prepublishOnly" : "uglifyjs -o myfile.min.js myfile.js"
    }
    

    参考:npm scripts

    【讨论】:

      猜你喜欢
      • 2014-03-11
      • 2016-01-02
      • 1970-01-01
      • 1970-01-01
      • 2018-03-15
      • 1970-01-01
      • 1970-01-01
      • 2021-07-20
      • 2014-05-15
      相关资源
      最近更新 更多