这照旧我最相识的package.json吗?
files界说了哪些文件应该被包罗在 npm install 后的 node_modules中。 虽然,有些文件是自动袒暴露来的,不管你是不是设置了files,好比: package.json README / CHANGELOG / LICENSE ... 许多库都界说了 files,停止一些不须要的文件袒露到 node_modules 中。 vite 中是这样设置的: { "files": [ "bin", "dist", "client.d.ts" ] } 我之前就不知道这个设置,导致我宣布的一个 npm 组件 vue-awesome-progress[3] 就袒露了源码部门,固然这也没啥影响,原来就是开源的。可是这也增进了别人的资源下载量,也是一种挥霍。以是,专业点的搞法照旧加上files设置吧。 bin bin 列出了可执行文件,暗示你这个包要对外提供哪些剧本。 在这个包被 install 安装时,假如是全局安装 -g,bin 列出的可执行文件会被添加到 PATH 变量(全局可执行);假如是局部安装,则会进入到 node_modules/.bin/ 目次下。 bin 在一些 CLI 器材顶用得很频仍,好比 Vue CLI。 在开拓 npm 包时,要求宣布的可执行剧本要以#!/usr/bin/env node开头,这是为什么呢? 我查了一下,原本是为了用于指明该剧本文件要行使 node 来执行。 main, browser, module 这三个设置对我们的影响照旧挺大的。 main字段抉择了别人require('xxx')时,引用的是哪个模块工具。在不配置main字段时,默认值是index.js。 假如你开拓的包是用于赏识器端的,那么用browser指定进口文件是最佳的选择。 module则代表你开拓的包支持ESM,并指定了一个ESM进口。 详细这三个字段怎么用,照旧挺有学问的,这里保举一篇文章package.json中你还不清晰的browser,module,main 字段优先级[4],讲得挺细。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |