Require('child_process') => 找不到 Require / child_process + launch .bat

2024-06-22

我已经在论坛上搜索了三天的方法来让我的程序工作,但它仍然不起作用......

我正在尝试我的第一个 AngularJS 项目,我需要启动外部程序当用户单击图像时。

我有一个名为 tool-list 的模块,在我的 tool-list.component.ts 中,我导出一个名为 ToolListComponent 的类。 在这个课程中,我有启动外部程序的功能。

    launchtool(){
      alert("I'm trying to launch test.bat!");
      const spawn = require('child_process').spawn;
      //const bat = spawn('start', ['./TrashCode/test.bat']);
      //const bat = spawn('cmd.exe', ['start', './TrashCode/test.bat']);
      //var exec = child_process.spawn('start', './TrashCode/test.bat', {detached: true});
      alert("It works!");
    }

在评论中我保留了几行我尝试过的内容。

我的问题:当我使用require => 错误 TS2304 找不到名称“require”。要不就子进程 => 错误找不到模块“child_process”。

我绝对不是第一个遇到此类问题的人,但是这两种解决方案都不适合我(import、import * as、require、declare function require(name:string)、var require:any; [...] )。

也许对于你们中的一些人来说,解决方案是显而易见的;我正在复习这个案例中的教训。

服务器和客户端将在客户端,我只是使用网络作为HMI


您无法通过 Web 浏览器运行子进程,除非您的应用程序在桌面应用程序容器中运行,例如Electron http://electron.atom.io/(这使得 Node 模块在其 Web 运行时中可用)。允许浏览器执行 shell 脚本是非常不安全的 - 想象一下如果弹出窗口能够下载.bat并立即在您的机器上运行它......

也就是说,如果您希望批处理文件运行在服务器上并且由客户端触发,这是完全可行的 - 只需调用child_process.spawn()响应某种 REST 调用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Require('child_process') => 找不到 Require / child_process + launch .bat 的相关文章

  • 从另一台服务器读取 Node.js 中的大文件

    我有两台相互通信的服务器 Server1 向 Server2 请求文件的部分内容 并将收到的数据存储到一个文件中 Server2 应该接收每个请求并创建一个流管道传输数据 假设服务器2中存储的文件 目录 如下 bigfile gz bigf
  • 如何使用node-sass将scss编译为css

    我有一个 master scss 其中包含许多来自其他 scss 文件的导入 如果我更改 scss 文件 master css 会自动生成 我只使用 NPM 没有使用 Gulp 或 Grunt 这应该保持不变 我当前的构建脚本 script
  • 表格的 元素中是否允许使用 ng-model?

    表格元素内是否允许使用 ng model 如果我更改特定列 即视图 角度会自动更新模型吗 如果您要使用 HTML 直接编辑表格单元格contenteditable属性 ng model 不会自动工作 因为默认情况下它仅适用于表单元素 有可能
  • 使用 node.js 和 socket.io 阻止 CORS

    我最近开始学习node js和socket io 我遵循了 socket io 的简单教程 在我的计算机上运行时一切正常 但是 我决定将客户端部分上传到服务器进行测试 这就是问题开始的地方 我想在网络主机上运行聊天客户端 并在我的计算机或其
  • Aptana Studio 有 NodeJS 插件吗?

    Aptana Studio 有 NodeJS 插件吗 至少对于 NodeJS 代码辅助来说是这样 也许是创建 NodeJS 项目的一种方法 以及本地NodeJS调试 目前我们没有 NodeJS 支持 如果社区对此感兴趣 那么提交功能请求并对
  • 在 AngularJS 中单击按钮打开一个新选项卡

  • 在 AngularJs 中设置动态作用域变量 -scope.

    我有一根绳子 是从routeParam或指令属性或其他什么 我想基于此在范围上创建一个变量 所以 scope
  • 在 angularjs 中按属性执行 Group By 和 Sum

    好的 有一个简单的页面 显示使用中的对象集合ng repeat key value in data groupBy Id 我想按已知属性对数据进行分组 并对其中一个字段执行汇总求和 我用过angular filter js库利用 group
  • 页面路由不完全是我想要的

    我在下面的代码中使用 Angular Routing 将用户引导至新的注册表单 该应用程序的工作原理如下 用户看到一个网页 要求他们通过单击适当的按钮在 数字报价 或 屏幕报价 之间做出选择 单击该按钮后 它应该将其定向到另一个显示相应注册
  • 设计确认链接将用户重定向到 heroku 域而不是自定义域

    我有一个网络应用程序 前端采用 Angular 后端采用 Rails 我有一个自定义域www example com并将用户重定向到 heroku URL example herokuapp com 用户注册后 需要确认他们的电子邮件 当他
  • 在同一个 fd 上多次 createReadStream

    在上一个问题中 https stackoverflow com questions 13932967似乎从 node js 中的文件进行随机访问读取的唯一方法是使用fs createReadStream http nodejs org ap
  • 将 React 应用程序作为后台进程运行

    我对部署前端代码完全陌生 因此提出了这个问题 我有一个 React 应用程序 需要作为后台进程运行 但是我对如何执行此操作有点困惑 我运行一个 npm 脚本 npm run build 在服务器上构建 缩小和服务项目 构建过程的相关代码是这
  • 玩笑 toEqual 不适用于异常匹配

    我是新来的jest所以我不确定是否是我的错 这是我的测试用例 it should throw error if wrong email or phone number is provided async gt await expect us
  • 安装 gulp browserify 总是报错

    我尝试使用以下命令安装 gulp browserify npm install gulp browserify save dev 我已经成功安装了许多其他软件包 例如 gulp autoprefixer gulp concat gulp m
  • 如何更改 uib-tabset 中每个选项卡的路由

    当我选择一个选项卡时 我希望更改 url 我应该为每个选项卡创建一个状态吗 这是我的代码 无需更改状态即可正常工作 我的应用程序 js var myApp angular module app ui router ngAnimate ui
  • 使用 IE 11 和 AngularJS 的 2 路数据绑定问题

    我最近在使用 AngularJS 的 Web 应用程序上构建了一个功能 但在 IE 11 上遇到了一些问题 apply 将数据更改写入 DOM 由于某种原因 这种情况仅有时发生 而当我尝试调试问题时却从未发生 这使得它看起来像是一个计时问题
  • 使用 mongoDB 重命名集合

    我无法重命名 mongoDB 中的集合 我可以看到它存在并且可以从中写入和读取数据 我已尝试使用节点 mongo 本机驱动程序进行以下操作 db collection mycollection renameCollection mynewc
  • 在 Nodejs、pg-promise 中重建连接

    在使用建立主 副本 postgres 连接的场景中pg promise 有没有办法在副本中断的情况下重建这些连接 而不是做process exitCode 1 在通过 initOptions 传递的错误函数中 并在服务启动时仅重建工作连接
  • NodeJS 生成用于签名和验证消息的有效 PEM 密钥

    Context 来自关于 Node v10 9 0 的 TLS SSL 的 NodeJS 文档 2018 年 8 月 https nodejs org api tls html tls tls ssl concepts https node
  • 在 OpenShift 上部署 Create React App:EACCES:权限被拒绝,打开 '/home/node/app/.eslintcache'

    我正在尝试使用 Dockerfile 在 OpenShift 上部署 Create React App webapp OpenShift 构建成功完成 当我访问路线时 我可以看到应用程序运行 1 秒 然后屏幕上出现此错误 Failed to

随机推荐