框架源码
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.

44 lines
1.4 KiB

4 years ago
  1. const path = require('path');
  2. const fs = require('fs')
  3. const fileName = 'tisplatform.json';
  4. const production = process.env.NODE_ENV === 'production';
  5. function resolve(dir) {
  6. return path.join(__dirname, dir);
  7. }
  8. function injectSdks(options) {
  9. this.options = options;
  10. }
  11. injectSdks.prototype.apply = function (compiler) {
  12. let _path = this.options.path;
  13. let sdkName = this.options.sdkName;
  14. let json = {};
  15. if (production) return;
  16. compiler.plugin('compilation', (compilation) => {
  17. console.log('The compiler is starting a new compilation...');
  18. try {
  19. const assert = require('../../sdk/tisplatform');
  20. compilation.plugin(
  21. 'html-webpack-plugin-before-html-processing',
  22. (data, cb) => {
  23. Object.values(assert).forEach(resource => {
  24. const {cssFiles, jsFiles} = resource;
  25. // console.log('aaaaa',cssFiles)
  26. // console.log('aaaaa',jsFiles)
  27. data.assets.js.push(...jsFiles);
  28. data.assets.css.push(...cssFiles);
  29. console.log('js assert', data.assets.js)
  30. console.log('css assert', data.assets.css)
  31. });
  32. // cb(null, data)
  33. }
  34. )
  35. } catch (e) {
  36. }
  37. })
  38. }
  39. module.exports = injectSdks;