前端转vue
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

backend.ts 1.1KB

1234567891011121314151617181920212223242526272829303132333435
  1. const express = require('express');
  2. const shelljs = require('shelljs');
  3. const server = express();
  4. const rootPath = process.cwd()
  5. server.all('*', (req, res, next) => {
  6. res.header("Access-Control-Allow-Origin", "*");
  7. res.header("Access-Control-Allow-Headers", "X-Requested-With,username,token");
  8. res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");
  9. res.header("X-Powered-By", ' 3.2.1')
  10. res.header("Content-Type", "application/json;charset=utf-8");
  11. next();
  12. });
  13. server.get('/createModule/addView', (req, res) => {
  14. doCopy(`yarn v --moduleName=${req.query.name}`, res)
  15. });
  16. server.get('/createModule/addComponent', (req, res) => {
  17. doCopy(`yarn c --moduleName=${req.query.name}`, res)
  18. });
  19. function doCopy(cmd, res) {
  20. shelljs.cd(rootPath);
  21. const shellRes = shelljs.exec(cmd)
  22. if (shellRes) {
  23. return res.status(200).send({ error: 0, msg: '创建成功' });
  24. }
  25. // 只有创建失败时才会有返回值,因为vite检测到创建文件后会自动刷新页面
  26. res.status(500).send({ error: 1, msg: '创建失败,具体问题请看控制台' });
  27. }
  28. server.listen(3006);
  29. console.log('commander-ui已启动到3006端口')