【问题标题】:Using NPM package (parse-server) from GitHub Master使用来自 GitHub Master 的 NPM 包(解析服务器)
【发布时间】:2016-03-06 21:46:05
【问题描述】:

我正在尝试使用最新的 parse-server 并在 GitHub 中进行一些修复,而不是使用 NPM。但是我发现当我

npm install --save ParsePlatform/parse-server

当我尝试要求 parse-server 时出现错误

Error: Cannot find module 'parse-server'

这是为什么呢?我还注意到在 node_modules 中,parse-server/lib 是空的。是编译失败还是什么?

【问题讨论】:

    标签: node.js npm npm-install parse-server


    【解决方案1】:

    查看 Parse Server 存储库中的 package.json,他们有一个 prepublish 脚本,该脚本在将文件推送到 NPM 之前运行构建 - 直接从 Github 拉取包时不会运行,所以你必须手动构建它。如果您进入node_modules 中的parse-server 文件夹,打开命令提示符并运行npm run build,它应该可以正常工作。不过,每次更新软件包时都必须这样做!

    编辑:经过进一步检查,我注意到 package.json 设置了 files 选项,因此 NPM 忽略了 src 文件夹 - 从他们的角度来看,这是有道理的,因为它可以节省他们每次发布新版本时都必须将所有源代码推送到 NPM,但这意味着从 Github 安装时你可能不走运,因为它总是会遗漏你需要的文件能够构建它。

    如果您绝对需要最新版本的代码,我认为您最好的选择可能是将 Github 存储库克隆到您的本地计算机,构建它,然后使用 npm link 将您的项目链接到本地​​版本包裹。不过,这可能会很难维护——你最好暂时坚持使用 NPM 版本,然后在他们的 Github 上提交一个问题,询问他们是否可以从 repo 进行安装。

    【讨论】:

    • 当我尝试这样做时,我得到src/ doesn't exist。不知何故,npm install 不会拉取所有文件?
    • 请耐心等待 - 我会将它安装到我的机器上,看看是否遇到同样的问题。
    • @JiewMeng 我看到了问题。 package.json 有一个 files 选项集,因此 NPM 会忽略 src 文件夹 - 从他们的角度来看,这是有道理的,因为这样可以避免他们每次发布新版本时都必须将所有源代码推送到 NPM,但这意味着从 Github 安装时您可能不走运,因为它总是会遗漏构建它所需的文件。我将把它编辑到我的答案中,以及如何解决它的一些想法。
    猜你喜欢
    • 2018-06-25
    • 2019-06-05
    • 1970-01-01
    • 2016-07-27
    • 2013-08-05
    • 1970-01-01
    • 1970-01-01
    • 2021-06-20
    • 1970-01-01
    相关资源
    最近更新 更多