簡體   English   中英

NodeJS - 在 child_process 中找不到模塊

[英]NodeJS - Cannot find module in child_process

我想使用 child_process 在后台執行長時間的任務,而不會減慢整個應用程序的速度。

我在 child_process 中需要 sqlite3 模塊時遇到問題。 這是我的代碼:

主文件

const child_process = require('child_process');
const fork = child_process.fork('child.js');

孩子.js

const sqlite3 = require('sqlite3').verbose();
const db = new sqlite3.Database('data.db');

這是我得到的:

module.js:487 拋出錯誤; ^

Error: Cannot find module 'A:\myretail\clictill_electron\node_modules\sqlite3\lib\binding\node-v57-win32-x64\node_sqlite3.node'
    at Function.Module._resolveFilename (module.js:485:15)
    at Function.Module._load (module.js:437:25)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (A:\myretail\clictill_electron\node_modules\sqlite3\lib\sqlite3.js:4:15)
    at Object.<anonymous> (A:\myretail\clictill_electron\node_modules\sqlite3\lib\sqlite3.js:190:3)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)

包.json:

{
    "name": "clictill_electron",
    "productName": "Clictill",
    "version": "1.0.0",
    "main": "main.js",
    "dependencies": {
        "child_process": "^1.0.2",
        "electron": "^1.8.4",
        "fibers": "^2.0.2",
        "node-gyp": "^3.6.2",
        "node-pre-gyp": "^0.8.0",
        "request": "^2.85.0",
        "sqlite3": "^3.1.13",
        "sync": "^0.2.5"
    },
    "build": {
        "files": [
            "app/**/*",
            "node_modules/**/*",
            "package.json"
        ]
    },
    "scripts": {
        "preinstall": "npm --add-python-to-path='true' --debug install --global windows-build-tools && npm install --global node-gyp && setx PYTHON \"%USERPROFILE%\\.windows-build-tools\\python27\\python.exe\" && npm config set python PYTHON",
        "postinstall": "node_modules/.bin/electron-rebuild -v 1.8.2 -w sqlite3 -p",
        "start": "electron .",
        "release": "build",
        "rebuild": "electron-rebuild -f -w sqlite3"
    },
    "devDependencies": {
        "electron-builder": "^10.8.1",
        "electron-rebuild": "^1.7.3"
    }
}

知道這是從哪里來的嗎?

您是否檢查過您的路徑以查看 sqlite3 模塊是否存在於應有的位置?

否則我會做npm child_process uninstall --save ,然后做npm child_process install --save

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM