康巴易测肤/伤疤uniapp小程序类
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.

webpack.common.js 1.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. const {resolve} = require('path');
  2. const CopyPlugin = require('copy-webpack-plugin');
  3. const webpack =require('webpack');
  4. const cmd = require('node-cmd');
  5. const {data:versions,err} = cmd.runSync('npm v uni-simple-router versions');
  6. if(err){
  7. console.log('获取线上版本失败,无法继续打包。。。')
  8. process.exit(1);
  9. }
  10. let lastVersion='';
  11. const list=JSON.parse(versions.replace(/'/g,'"')).reverse();
  12. for(let i=0;i<list.length;i++){
  13. if (!/[A-Za-z]/g.test(list[i])) {
  14. lastVersion=list[i];
  15. break;
  16. }
  17. }
  18. module.exports = {
  19. entry: './src/index.ts',
  20. output: {
  21. library: 'Router',
  22. libraryTarget: 'umd',
  23. },
  24. resolve: {
  25. extensions: ['.tsx', '.ts', 'd.ts', '.js', '.json'],
  26. },
  27. module: {
  28. rules: [
  29. {
  30. test: /\.tsx?$/,
  31. use: [
  32. {
  33. loader: 'ts-loader',
  34. },
  35. ],
  36. exclude: /node_modules/,
  37. },
  38. ],
  39. },
  40. plugins: [
  41. new CopyPlugin([
  42. {
  43. force: true,
  44. from: resolve(__dirname, '../src/component'),
  45. to: resolve(__dirname, '../dist'),
  46. }
  47. ]),
  48. new webpack.DefinePlugin({
  49. $npm_package_name: webpack.DefinePlugin.runtimeValue(() => {
  50. return JSON.stringify(process.env.npm_package_name.toLocaleUpperCase())
  51. }, true ),
  52. $npm_package_version: webpack.DefinePlugin.runtimeValue(() => {
  53. return JSON.stringify(process.env.npm_package_version.toLocaleUpperCase())
  54. }, true ),
  55. $npm_package_last_version: webpack.DefinePlugin.runtimeValue(() => {
  56. return JSON.stringify(lastVersion)
  57. }, true ),
  58. })
  59. ],
  60. };