在Vue中通过按钮或者其他方式执行命令行,并获取命令行里的数据

使用Vue的JS打开一个本地CMD命令行并自定义指令
const process = require('child_process')
  // (function() {
  process.exec('npm run build', (error, stdout, stderr) => {
    if (!error) {
      // 成功
    } else {
      // 失败
    }
  });
[Vue warn]: Error in mounted hook: "TypeError: process.exec is not a function"
尝试过各种node.js的指令,但是都不行
在Vue中通过按钮或者其他方式执行命令行,并获取命令行里的数据

不要试图在前端调用本机资源,浏览器禁止你这么做。之前还有ActiveObject现在也没人用了。
你vue里面用nodejs指令不行是因为nodejs是运行在你电脑上的,前端js是运行在浏览器里的,这俩不一样

vue是没有权限打开本地程序的,不要枉费心思了

web端是没有这么大的权限去调用系统应用的,可以通过node服务端去做,但是这么做也是有缺陷的,node服务部署到哪里就会调用哪里的应用,比如你把项目部署到了你的本地,那么调用的cmd就是你本地的cmd,如果将项目部署到了线上,那么就会调用你线上服务器的cmd,这种做法只适用于本地部署

办法还是有的,前端Vue中直接调用node的API肯定是行不通,只能通间接方式,可以在Vue界面模拟CMD命令行,然后通过http接口把前端输入的内容以字符串的形式传给nodejs后端,让其执行,再把执行结果返回到Vue页面上展示,可能要花不少精力去处理这种转换和接口请求响应。