首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >节点:如何扩展module.paths

节点:如何扩展module.paths
EN

Stack Overflow用户
提问于 2019-12-02 16:53:37
回答 1查看 504关注 0票数 0

我需要通过需求访问我的自定义静态文件。为此,我创建了一个目录“assets”,并将其提升为package:

代码语言:javascript
复制
|-assets
|    |-default-asset.json
|    |-package.json

其中package.json看起来是这样的:

代码语言:javascript
复制
{
  "name": "assets",
  "version": "1.0.0",
  "main": "./default-asset.json"
}

我需要将"main“属性设置为packe中存在的某个属性,使其不被节点忽略。无论如何,现在这个包是node_modules库根的一部分。

但是,当我调用节点来检查module.paths时,它仍然没有列出:

代码语言:javascript
复制
(base) ➜  server git:(master) ✗ node
Welcome to Node.js v12.13.1.
Type ".help" for more information.
> module.paths
[
  '/.../server/repl/node_modules',
  '/.../server/node_modules',
  '/.../node_modules',
  '/user/node_modules',
  '/home/node_modules',
  '/node_modules',
  '/home/user/.node_modules',
  '/home/user/.node_libraries',
  '/usr/lib/node'
]
> 

这可能是一个问题,因为当尝试从文件夹中要求其中一个文件时,我仍然有一个异常:

代码语言:javascript
复制
internal/modules/cjs/loader.js:800
    throw err;
    ^

Error: Cannot find module './assets/default-asset.json'
Require stack:
...
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-02 17:21:00

是的,我终于成功地解决了这个问题,而对于其他在这里挣扎的人来说,我是怎么做到的:

自定义包需要从app/package.json和

  • 中引用,更重要的是,从Packy-lock.json和"version": "file:custom-assets"注释!

  • package.json必须包含一个“主”条目,该条目引用内部的一个文件,其路径必须从./!!

<H19开始,资产的使用不能从./而是/H 212G 213开始。

现在这条路就在那里:

代码语言:javascript
复制
$ node 
> module.paths
[
  '.../important-code-snippets/JavaScript/require-custom-assets/repl/node_modules',
  '.../important-code-snippets/JavaScript/require-custom-assets/node_modules',

这里还有一个完整的运行示例:https://github.com/Macilias/important-code-snippets/tree/master/JavaScript/require-custom-assets

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59143414

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档