当前位置: 首页 > 面试题库 >

Node.js package.json主要参数

万勇
2023-03-14
问题内容

我已经做了很多搜索。但是,仍然对Node.js的package.json中的主要参数有疑问。

  1. 填写该字段有什么帮助?用另一种方式问,如果此字段出现,是否可以以其他样式启动模块?
  2. 我可以在主要参数中填写多个脚本吗?如果是,它们是否将作为两个线程启动?如果没有,如何在模块中启动两个脚本并使它们并行运行?

我知道第二个问题很奇怪。这是因为我在OpenShift上托管了Node.js应用程序,但是该应用程序包含两个主要组件。一种是REST
API,一种是通知传递服务。

我担心如果将通知API实施为单个线程,则通知传递过程将阻止REST
API。但是,它们必须连接到相同的MongoDB卡式盒。此外,如果可能的话,两个组件都可以在同一个齿轮中使用,我想节省一个齿轮。

欢迎任何建议。


问题答案:

从npm文档中:

主要字段是模块ID,它是程序的主要入口点。也就是说,如果您的程序包名为foo,并且用户安装了该程序包,然后执行了require(“
foo”),则将返回主模块的导出对象。

这应该是相对于软件包文件夹根目录的模块ID。

对于大多数模块,拥有一个主脚本是最有意义的,而通常没有太多其他东西。

简而言之:

  1. 仅当包的入口点与其根文件夹中的入口点不同时,才需要一个main参数。例如,人们常把入口点或,在这种情况下,相应的脚本必须被描述为在。package.json``index.js``lib/index.js``lib/<packagename>.js``main``package.json
  2. 您不能将两个脚本用作main,仅仅是因为require('yourpackagename')必须明确定义入口点。


 类似资料:
  • 请帮忙。在运行NetBeans 8.2安装程序时,它说在这台计算机上找不到jdk。使用“javahome安装程序参数”指定jdk位置。我转到命令提示符并从那里运行安装程序。我给了安装程序的地址——javahome“jdk的目录”。它仍然没有运行。请帮帮我。我不知道该怎么办。我尝试了我遇到的每一个解决方案,但都不起作用。有人能解释一下是什么问题吗?我有jdk 9.0.1。

  • Spring Cloud Stream提供了一些简化了消息驱动的微服务应用程序编写的抽象和原语。本节概述了以下内容: Spring Cloud Stream的应用模型 Binder抽象 持续的发布 - 订阅支持 消费者群体支持 分区支持 一个可插拔的Binder API 应用模型 一个Spring Cloud Stream应用程序由一个中间件中立的核心组成。该应用程序通过Spring Cloud

  • 本文档介绍 DM 提供的数据迁移功能以及相关的配置选项与使用示例。 Table Routing、Block & Allow Lists、Binlog Event Filter 在匹配库表名时,有以下版本差异: 对于 v1.0.5 版及后续版本,以上功能均支持通配符匹配。但注意所有版本中通配符匹配中的 * 符号 只能有一个且必须在末尾。 对于 v1.0.5 以前的版本,Table Routing 和

  • 本章节帮助用户快速了解 云联壹云 平台的主要功能. 监控 介绍监控告警的内容 多云管理 介绍标签管理、虚拟机的创建和连接的内容。 费用管理 介绍费用分析、预算、费用优化以及RI分析的内容。 认证与安全 介绍安全检查、安全告警、操作日志的内容。

  • 主要特性 Mininet 作为一个轻量级软定义网络研发和测试平台,其主要特性包括: 支持 Openflow、OpenvSwitch 等软定义网络部件 方便多人协同开发 支持系统级的还原测试支持复杂拓扑、自定义拓扑 提供 Python API 很好的硬件移植性(Linux 兼容),结果有更好的说服力 高扩展性,支持超过 4096 台主机的网络结构

  • 本章描述了过滤器模型的主要概念。 应用开发人员通过实现 javax.servlet.Filter 接口并提供一个公共的空参构造器来创建过滤器。该类及构建Web应用的静态资源和 servlet 打包在 Web 应用归档文件中。Filter 在部署描述符中通过 <filter>元素声明。一个过滤器或一组过滤器可以通过在部署描述符中定义<filter-mapping>来为调用配置。可以使用 servle