标签: node-modules

Node.js 共享对象或单例以确保单一事实来源

我正在编写一个 Node 应用程序,它将根据从后端数据库提取的配置生成一组 JMS 队列订阅。初始化后,我将从后端检索当前状态,但随后我需要支持对 Node 服务器的入站 API 调用,以动态添加和远程订阅(然后我将更新存储在后端的列表)。

整个应用程序中必须只有一个可用的订阅数组实例,并且它必须是事实来源。

例子:

在 init 时,我会从 API 得到:

{
    "amysCar": {
        "name": "2016 Lamborghini Gallardo LP 550-2",
        "queue": "/queues/amysracingstats"
    },
    "bobsCar": {
        "name": "1967 Ford Mustang Shelby Shelby GT500",
        "queue": "/queues/bobsrestorationproject"
    }
}
Run Code Online (Sandbox Code Playgroud)

然后假设鲍勃决定不再想要发布他的修复项目;他将对 Node 服务器进行 API 调用DELETE /projects/bobsCar。我将从队列数组中删除队列侦听器并更新后端数据库。


实际上,我需要能够从多个控制器访问 JMS 队列数组,因为处理 API 调用的控制器与处理队列订阅的控制器是分开的。

我知道单例在 Node 中编写和管理是出了名的困难,令人不悦,而且据说完全没有必要,因为 Node.js 模块缓存据说只加载模块的单个实例。如果这是正确的,我可以简单地将队列订阅数组作为私有对象存储在模块中,然后将require其存储在 API 调用控制器中。

  1. 这是真的?我可以利用这个能力来满足我的要求吗?

  2. 如果是这样,我将如何覆盖模块的初始化,以便我可以进行初始后端调用来获取当前状态?

  3. 我是不是想太多了?

singleton node.js node-modules

2
推荐指数
1
解决办法
836
查看次数

生产环境中的节点服务器必须有节点模块吗?

在生产环境中部署 Node.js 服务器时,我们是否必须安装 Node_modules 还是第三方有其他最佳实践?

在客户端中,我们有一个第三方的供应商.js 文件,但我们如何在服务器上执行它?我不想安装大文件夹“nod_modules”机器人来拥有较小的文件/文件夹来包含所有内容。

在服务器上部署节点的最佳实践是什么?

谢谢!

nodes node.js node-modules

2
推荐指数
1
解决办法
2893
查看次数

在reactjs中convert-csv-to-json返回错误

在reactjs中使用https://www.npmjs.com/package/convert-csv-to-json时,我收到错误Uncaught TypeError: fs.readFileSync is not a function

import React, { Component } from 'react'
import { connect } from 'react-redux'
import $ from 'jquery';
export default class CsvRead extends React.Component {
  constructor(props) {
    super(props);
  }
  CsvRead() {
    let csvToJson = require('convert-csv-to-json');
    let json = csvToJson.getJsonFromCsv("../../MonthlySummaryDetailsCSV.csv");
    for(let i=0; i<json.length;i++){
    console.log(json[i]);
    }

  }
  render() {
    return (
      <div >{this.CsvRead()}</div>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我吗?

node.js node-modules reactjs

2
推荐指数
1
解决办法
3150
查看次数

在集合“@schematics/angular”中找不到“ng-new”

我已经删除了 npm 和 node。另外,我已经删除并恢复了自制软件。我从在线下载站点下载了 npm 和 node 来恢复它们。我还通过 npm 下载了 angular cli。我通过终端找到我的桌面并输入

ng new mag-board
Run Code Online (Sandbox Code Playgroud)

开始我的角度项目。我被提示以下错误:

Schematic "ng-new" not found in collection "@schematics/angular".
Error: Schematic "ng-new" not found in collection "@schematics/angular".
    at SchematicEngine.createSchematic (/usr/local/lib/node_modules/@angular/cli/node_modules/@angular-devkit/schematics/src/engine/engine.js:232:23)
    at CollectionImpl.createSchematic (/usr/local/lib/node_modules/@angular/cli/node_modules/@angular-devkit/schematics/src/engine/engine.js:69:29)
    at NewCommand.getSchematic (/usr/local/lib/node_modules/@angular/cli/models/schematic-command.js:130:27)
    at NewCommand.initialize (/usr/local/lib/node_modules/@angular/cli/models/schematic-command.js:43:36)
    at process._tickCallback (internal/process/next_tick.js:68:7)
    at Function.Module.runMain (internal/modules/cjs/loader.js:757:11)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
Run Code Online (Sandbox Code Playgroud)

我删除了 npm、删除了节点和我删除了 Angular CLI

我重新安装了 npm、node 和 Angular CLI

我应该能够通过输入 ng new mag-board 生成一个 Angular 项目

terminal homebrew npm node-modules angular

2
推荐指数
1
解决办法
4073
查看次数

运行 ReactiNative 项目 index.js not found 时发生错误

我是 ReactNative 的新手,我面临一个问题。请检查以下日志是否相同。我在尝试使用 ReactNative 项目运行时遇到了这个问题

react-native run-android
Run Code Online (Sandbox Code Playgroud)

错误日志:

错误:无法./indexD:\ReactNativeProject\testing\node_modules\react-native\scripts/.以下位置解析模块:无法从./index中找到模块D:\ReactNativeProject\testing\node_modules\react-native\scripts/.。事实上,这些文件都不存在: * D:\ReactNativeProject\testing\node_modules\react-native\scripts\index(.native||.android.js|.native.js|.js|.android.json|.native.json|.json|.android.ts|.native.ts|.ts|.android.tsx|.native.tsx|.tsx) *D:\ReactNativeProject\testing\node_modules\react-native\scripts\index\index(.native||.android.js|.native.js|.js|.android.json|.native.json|.json|.android.ts|.native.ts|.ts|.android.tsx|.native.tsx|.tsx) 在 ModuleResolver.resolveDependency (D:\ReactNativeProject\testing\node_modules\metro\src\node-haste\DependencyGraph\ModuleResolution.js:163:15) 在 ResolutionRequest.resolveDependency (D:\ReactNativeProject\testing\node_modules\metro\src\ node-haste\DependencyGraph\ResolutionRequest.js:52:18) 在 DependencyGraph.resolveDependency (D:\ReactNativeProject\testing\node_modules\metro\src\node-haste\DependencyGraph.js:283:16) 在 D:\ReactNativeProject\ testing\node_modules\metro\src\lib\transformHelpers.js:261:42 在服务器上。(D:\ReactNativeProject\testing\node_modules\metro\src\Server.js:1038:41) at Generator.next () at asyncGeneratorStep (D:\ReactNativeProject\testing\node_modules\metro\src\Server.js:99: 24) 在 _next (D:\ReactNativeProject\testing\node_modules\metro\src\Server.

我做了什么来解决这个问题?

1)。当我在 Github 上找到解决方案时,我尝试了以下命令

react-native start --reset-cache
Run Code Online (Sandbox Code Playgroud)

2)。我试图删除node-module文件夹并重新安装,但仍然没有成功。

反应本机版本: 0.59.2

在此处输入图片说明

node.js node-modules reactjs react-native

2
推荐指数
1
解决办法
1802
查看次数

导入扩展类的模块

在寻找在Leaflet.js 中旋转标记的方法时,我找到了模块Leaflet-rotatedmarker。我是通过 npm 安装的,但现在我不知道如何实际使用它。

根据自述文件,它只扩展了现有的Marker类。据我了解,我现在应该可以调用Marker.setRotationAngle(),但该函数不存在。Marker从导入leaflet-rotatedmarker也不起作用。

如何正确导入扩展类或如何使用模块中的功能/属性扩展现有的传单类?谢谢。

我说的是import { XYZ } from 'leaflet-rotatedmarker'声明。

编辑:

如果我尝试rotationAngle在构造函数中设置它,它也不起作用:

const marker = L.marker([tmpAgv.Pos.X, tmpAgv.Pos.Y], { alt: tmpAgv.Id }, {rotationAngle: 180}).addTo(this.mapObject);
Run Code Online (Sandbox Code Playgroud)

标记仍未旋转。

leaflet node-modules typescript angular

2
推荐指数
1
解决办法
1313
查看次数

我收到以下错误消息“无法冻结 ./node_modules/

我正在使用 GraphQL 和 React 构建一个 Web 应用程序。编译前端/客户端时,我看到以下错误:

ct

我还能提供其他东西来帮助调试吗?

谢谢!

node-modules reactjs graphql prisma-graphql

2
推荐指数
1
解决办法
2173
查看次数

防止 node_modules 包更新的最佳方法

我已经下载/安装了一个 node_module(npm 包)......我在 node_modules 文件夹中使用了内部文件以满足我的需求。将它用作 node_module 对我来说是最方便的,但是我担心下次我更新 npm 包时,它可能会更新并删除我所做的所有更改。确保仅不更新特定包的最佳方法是什么?

非常感谢

javascript npm node-modules npm-install

2
推荐指数
1
解决办法
679
查看次数

是否可以从另一个包导入节点包?

假设我刚刚react-native-gifted-chat从 npm安装,我意识到里面有另一个包,我如何访问该uuid包中的包?

这是在我的 node_module 文件夹中:

这是在我的 node_modules 文件夹中

通常我们只是这样做import ... from 'react-native-gifted-chat',访问包但是如何uuidreact-native-gifted-chat 不安装 uuid包的情况下访问包?

javascript node.js npm node-modules

2
推荐指数
1
解决办法
62
查看次数

TypeError Joi.validate 不是函数

看

请帮助我不知道发生了什么即时使用以下内容:

"body-parser": "1.19.0",
"express": "4.17.1",
"joi": "17.1.1"
Run Code Online (Sandbox Code Playgroud)

但只有 joi 我有问题

javascript function node.js node-modules joi

2
推荐指数
1
解决办法
1892
查看次数