在webpack文件中添加转换器,专门针对包的文件进行转换
webpack.config.js:
{
test: /filterComponentsByName\.js?$/,
use:['ox-total-transform-loader'],
include: [resolve('/node_modules/react-styleguidist/lib/client/utils')],
}
ox-total-transform-loader内容:
const path = require('path')
module.exports = function (content) {
let callback = this.async() // 异步
content = `
import "core-js/modules/es.array.filter";
import "core-js/modules/es.function.name";
import getFilterRegExp from './getFilterRegExp';
export default function filterComponentsByName(components, query) {
var regExp = getFilterRegExp(query);
var regExp2 = new RegExp(query.split('').join('.*'),'i') // 保留汉字
return components.filter(function (_ref) {
var name = _ref.name;
var description = _ref.props.description
var isNameExist =regExp2.test(name);
var isContentExist =regExp2.test(description);
return isNameExist||isContentExist;
});
}
`
callback(null, content)
return
}
网友评论