分叉进程找不到模块
我有以下命令:
var fk = cp.fork('./client/processes/getClipboardImage.js',[],{cwd: __dirname + '/../../'});
然后运行这个:
"use strict"; const electron_1 = require('electron'); var base64Image = electron_1.clipboard.readImage().toDataURL(); process.emit('got-string', base64Image);
我不知道为什么,但我得到一个错误说:
找不到模块“电子”
fork中的文件可以访问电子,那为什么不分叉?
正在执行的文件位于运行utils/Workpace.js
的方法的controllers
,并且该方法创buildfork。
客户机/控制器/ index.js
import { Workspace } from '../../client/utils/Workspace'; import { globals } from '../../client/utils/global'; ipcRenderer.on('workspace.paste', e => { if (globals.activeWorkspace) { globals.activeWorkspace.pasteToLayer(); } });
客户端/ utils的/ Workspace.js
import cp = require('child_process'); export class Workspace { public pasteToLayer(/*image: Electron.NativeImage*/): Promise<Layer> { return new Promise(resolve => { var fk = cp.fork('./client/processes/getClipboardImage.js',[],{cwd: __dirname + '/../../'}); fk.on('got-string', (err, out) => { if (err) { throw err; } // do some final thigs }); }); } }
客户端/ utils的/ global.js
import { Workspace } from '../../client/utils/Workspace'; export class globals { public static activeWorkspaceId: string; public static activeWorkspace: Workspace; }
可能这个cwd: __dirname + '/../../'
正在把你带到包含node_modules的级别之上。
关于目录结构,很难确定更多的信息。