ykit-config-fekit

Features

该插件主要是为了迁移 FEkit 项目,详细迁移文档请参考这里

安装

直接按照以下命令安装即可,该插件会依照项目中的 fekit.config 生成 ykit.js

  1. $ npm install @qnpm/ykit-config-fekit --save --registry http://npmrepo.corp.qunar.com/

插件配置详情

  1. {
  2. plugins: this.config.plugins.concat([
  3. this.webpack.DefinePlugin({
  4. "process.env": {
  5. FEKIT: JSON.stringify(envConfig[self.env])
  6. }
  7. })
  8. ]),
  9. module: {
  10. preLoaders: this.config.module.preLoaders.concat([
  11. { test: /\.(jsx?|coffee)$/, loader: sysPath.join(__dirname, './preloaders/script.js') }
  12. ]),
  13. loaders: this.config.module.loaders
  14. .filter(function (loader) {
  15. return loader.test && loader.test.toString().match(/less/) === null;
  16. })
  17. .map(function (loader) {
  18. if (loader.test.toString().match(/\.css/)) {
  19. return {
  20. test: /\.(sass|scss|css|less)$/,
  21. loader: options.ExtractTextPlugin.extract('style', [
  22. 'css-loader?-url',
  23. require.resolve('./loaders/fekit-scss')
  24. ])
  25. };
  26. } else if (loader.test.toString().match(/html|string/)) {
  27. return {
  28. test: /\.(html|string)/,
  29. loader: 'raw-loader'
  30. };
  31. }
  32. return loader;
  33. }).concat({
  34. test: /\.coffee$/, loader: "coffee-loader"
  35. }).concat({
  36. test: /\.(handlebars|mustache)/,
  37. loader: require.resolve('./loaders/tmpl-loader')
  38. })
  39. },
  40. resolve: {
  41. extensions: this.config.resolve.extensions.concat([
  42. '.js',
  43. '.jsx',
  44. '.html',
  45. '.coffee',
  46. '.string',
  47. '.mustache',
  48. '.handlebars',
  49. ])
  50. }
  51. }