tools.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /**
  2. * Created by zhengguorong on 2016/11/30.
  3. */
  4. var fs = require('fs')
  5. var mkdirp = require('mkdirp')
  6. var path = require('path')
  7. var ejs = require('ejs')
  8. var fs = require('fs')
  9. const base64ToImg = (imgData, filePath) => {
  10. var base64Data = imgData.replace(/^data:image\/\w+;base64,/, "")
  11. var dataBuffer = new Buffer(base64Data, 'base64')
  12. var fileDir = path.dirname(filePath)
  13. mkdirp(fileDir, (err) => {
  14. fs.writeFile(filePath, dataBuffer, (err) => {
  15. })
  16. })
  17. }
  18. const renderFile = (filePath, data, successCallback) => {
  19. var rootPath = path.join(__dirname, '../views/')
  20. fs.readFile(rootPath + filePath, { flag: 'r+', encoding: 'utf8' }, function (err, result) {
  21. if (err) {
  22. console.log(err)
  23. return;
  24. }
  25. let html = ejs.render(result, data)
  26. successCallback(html)
  27. });
  28. }
  29. const saveFile = (filePath, data, successCallback) => {
  30. var rootPath = path.join(__dirname, '../public/pages/')
  31. mkdirp(rootPath, (err) => {
  32. fs.writeFile(rootPath + filePath, data, function (err) {
  33. if (err) {
  34. console.error(err);
  35. } else {
  36. successCallback && successCallback()
  37. }
  38. });
  39. })
  40. }
  41. module.exports = {
  42. base64ToImg,
  43. renderFile,
  44. saveFile
  45. }