gaoshuaixing 4 rokov pred
rodič
commit
dbc8dac860
3 zmenil súbory, kde vykonal 41 pridanie a 26 odobranie
  1. 38 24
      electron/api.js
  2. 2 1
      electron/apis/example.js
  3. 1 1
      package.json

+ 38 - 24
electron/api.js

@@ -64,6 +64,9 @@ exports.setup = async function () {
   io.on('connection', (socket) => {
     socket.on('ipc', (message, callback) => {
       eLogger.info('[ api ] [setup] socket id:' + socket.id + ' message cmd: ' + message.cmd);
+      
+      // const filepath = message;
+      // const fileObj = require(`./apis/${filepath}`);
       const data = apis[message.cmd](...message.params);
       if (data && typeof data.then === 'function') { // 判断是否是异步
         data.then((data) => {
@@ -90,27 +93,27 @@ exports.setup = async function () {
   return true;
 };
 
-function setApi() {
-  // fs读文件的时候,用path正规化 [打包读文件问题]
-  const apiDir = path.normalize(__dirname + '/apis');
-  eLogger.info('[setApi] apiDir: ', apiDir);
-  const fileArr = fs.readdirSync(apiDir);
-  eLogger.info('[setApi] fileArr: ', fileArr);
-  for (let i = 0; i < fileArr.length; i++) {
-    let filename = fileArr[i];
-    if (path.extname(filename) === '.js' && filename !== 'index.js') {
-      const name = path.basename(filename, '.js');
-      const fileObj = require(`./apis/${filename}`);
-      _.map(fileObj, function(fn, method) {
-        let methodName = getApiName(name, method);
-        apis[methodName] = fn;
-        eLogger.info('[setApi] method Name', methodName);
-      });
-    }
-  }
+// function setApi() {
+//   // fs读文件的时候,用path正规化 [打包读文件问题]
+//   const apiDir = path.normalize(__dirname + '/apis');
+//   eLogger.info('[setApi] apiDir: ', apiDir);
+//   const fileArr = fs.readdirSync(apiDir);
+//   eLogger.info('[setApi] fileArr: ', fileArr);
+//   for (let i = 0; i < fileArr.length; i++) {
+//     let filename = fileArr[i];
+//     if (path.extname(filename) === '.js' && filename !== 'index.js') {
+//       const name = path.basename(filename, '.js');
+//       const fileObj = require(`./apis/${filename}`);
+//       _.map(fileObj, function(fn, method) {
+//         let methodName = getApiName(name, method);
+//         apis[methodName] = fn;
+//         eLogger.info('[setApi] method Name', methodName);
+//       });
+//     }
+//   }
   
-  return true;
-}
+//   return true;
+// }
 
 // function setApi() {
 //   // fs读文件的时候,用path正规化 [打包读文件问题]
@@ -122,10 +125,7 @@ function setApi() {
 //     if (path.extname(filename) === '.js' && filename !== 'index.js') {
 //       const name = path.basename(filename, '.js');
 //       // require文件的时候,用相对路径并且不能path处理 [打包读文件问题]
-//       //const fileObj = require(`../apis/${filename}`);
-//       //const filepath = './apis/' + filename;
-//       //eLogger.info('[setApi] filepath: ', filepath);
-//       const fileObj = require(`./apis/${filepath}`);
+//       const fileObj = require(`./apis/${filename}`);
 //       _.map(fileObj, function(fn, method) {
 //         let methodName = getApiName(name, method);
 //         apis[methodName] = fn;
@@ -135,6 +135,20 @@ function setApi() {
 //   });
 // }
 
+function setApi() {
+  const apiDir = path.normalize(__dirname + '/apis');
+  fs.readdirSync(apiDir).forEach(function(filename) {
+    if (path.extname(filename) === '.js' && filename !== 'index.js') {
+      const name = path.basename(filename, '.js');
+      const fileObj = require(`./apis/${filename}`);
+      _.map(fileObj, function(fn, method) {
+        let methodName = getApiName(name, method);
+        apis[methodName] = fn;
+      });
+    }
+  });
+};
+
 /**
  * get api method name
  * ex.) jsname='user' method='get' => 'user.get'

+ 2 - 1
electron/apis/example.js

@@ -18,7 +18,8 @@ exports.openDir = function (dir = '') {
     return false;
   }
   dir = getElectronPath(dir);
-  shell.openPath(dir);
+  //shell.openPath(dir);
+  shell.openItem(dir);
   return true;
 }
 

+ 1 - 1
package.json

@@ -99,7 +99,7 @@
     "egg-bin": "^4.12.3",
     "egg-ci": "^1.11.0",
     "egg-mock": "^3.21.0",
-    "electron": "^12.0.10",
+    "electron": "8.4.1",
     "electron-builder": "22.7.0",
     "eslint": "^5.13.0",
     "eslint-config-egg": "^7.1.0",