实现点击后,打开本地电脑文件夹。
在NW项目中可以,但在web项目中不行,web项目中没有调用node的环境。
点击的事件回调
openFolder() {let path = this.localImgPath;let len = path.length;let reg = /^(.+?)[\\\/]$/g;if (reg.test(path)) {path = path.substr(0, len - 1);}FileUtil.openFolder(path);},
获取所要打开的文件夹的绝对路径路径的最后一个字符不能是/或者\(斜杠或反斜杠),如果是就去掉
最后调用openFolder方法,传入路径去打开文件夹
openFolder(path){if(window.hasOwnProperty('nw')){const {spawn } = nw.require('child_process');spawn('explorer.exe', [path]);}},
先引入了spawn,
spawn,使用指定的命令行参数创建新进程然后用spawn调用了explorer.exe,打开了传入的路径。
explorer.exe是微软为其Windows操作系统定义的的系统核心进程,是windows自带的。
用exec也可以打开
exec('explorer.exe', [path]);