没有递归的模拟`fs.readdirSync`node.js
Analog `fs.readdirSync` node.js without recursive
我尝试只将 html 个文件放入我的文件夹。但是我的代码将所有文件夹都放入我的根文件夹中,结果 return 结果是我。我只想获取 .html
个文件。
我的结构项目
src
folder
folder2
index.html
inner.html
我只需要 index.html
和 inner.html
我的代码:
function generateHtmlPlugins(templateDir) {
const templateFiles = fs.readdirSync(join(rootDir, templateDir));
return templateFiles.map(item => {
const parts = item.split('.');
const name = parts[0];
const extension = parts[1];
return new HtmlWebpackPlugin({
filename: `${name}.html`,
template: join(rootDir, `./${templateDir}/${name}.${extension}`),
inject: false
});
});
}
const htmlPlugins = generateHtmlPlugins('./src');
请帮我只发送 .html
个文件到我的函数中
您需要在 map
之前过滤您的文件
function generateHtmlPlugins(templateDir) {
const templateFiles = fs.readdirSync(join(rootDir, templateDir));
const htmlFiles = templateFiles.filter(item => item.split('.')[1] === 'html');
return htmlFiles.map(item => {
const parts = item.split('.');
const name = parts[0];
const extension = parts[1];
return new HtmlWebpackPlugin({
filename: `${name}.html`,
template: join(rootDir, `./${templateDir}/${name}.${extension}`),
inject: false
});
});
}
const htmlPlugins = generateHtmlPlugins('./src');
我尝试只将 html 个文件放入我的文件夹。但是我的代码将所有文件夹都放入我的根文件夹中,结果 return 结果是我。我只想获取 .html
个文件。
我的结构项目
src
folder
folder2
index.html
inner.html
我只需要 index.html
和 inner.html
我的代码:
function generateHtmlPlugins(templateDir) {
const templateFiles = fs.readdirSync(join(rootDir, templateDir));
return templateFiles.map(item => {
const parts = item.split('.');
const name = parts[0];
const extension = parts[1];
return new HtmlWebpackPlugin({
filename: `${name}.html`,
template: join(rootDir, `./${templateDir}/${name}.${extension}`),
inject: false
});
});
}
const htmlPlugins = generateHtmlPlugins('./src');
请帮我只发送 .html
个文件到我的函数中
您需要在 map
function generateHtmlPlugins(templateDir) {
const templateFiles = fs.readdirSync(join(rootDir, templateDir));
const htmlFiles = templateFiles.filter(item => item.split('.')[1] === 'html');
return htmlFiles.map(item => {
const parts = item.split('.');
const name = parts[0];
const extension = parts[1];
return new HtmlWebpackPlugin({
filename: `${name}.html`,
template: join(rootDir, `./${templateDir}/${name}.${extension}`),
inject: false
});
});
}
const htmlPlugins = generateHtmlPlugins('./src');