本文整理汇总了TypeScript中vscode.workspace.workspaceFolders.reduce方法的典型用法代码示例。如果您正苦于以下问题:TypeScript workspace.workspaceFolders.reduce方法的具体用法?TypeScript workspace.workspaceFolders.reduce怎么用?TypeScript workspace.workspaceFolders.reduce使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类vscode.workspace.workspaceFolders
的用法示例。
在下文中一共展示了workspace.workspaceFolders.reduce方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: selectors
/**
* Build formatter selectors
*/
function selectors(): Selectors {
const allLanguages = allEnabledLanguages();
const allRangeLanguages = allJSLanguages();
const { disableLanguages } = getConfig();
const globalLanguageSelector = allLanguages.filter(
l => !disableLanguages.includes(l)
);
const globalRangeLanguageSelector = allRangeLanguages.filter(
l => !disableLanguages.includes(l)
);
if (workspace.workspaceFolders === undefined) {
// no workspace opened
return {
languageSelector: globalLanguageSelector,
rangeLanguageSelector: globalRangeLanguageSelector,
};
}
// at least 1 workspace
const untitledLanguageSelector: DocumentFilter[] = globalLanguageSelector.map(
l => ({ language: l, scheme: 'untitled' })
);
const untitledRangeLanguageSelector: DocumentFilter[] = globalRangeLanguageSelector.map(
l => ({ language: l, scheme: 'untitled' })
);
return workspace.workspaceFolders.reduce(
(previous, workspaceFolder) => {
let { languageSelector, rangeLanguageSelector } = previous;
const select = selectorsCreator(workspaceFolder);
return {
languageSelector: languageSelector.concat(
select.languageSelector
),
rangeLanguageSelector: rangeLanguageSelector.concat(
select.rangeLanguageSelector
),
};
},
{
languageSelector: untitledLanguageSelector,
rangeLanguageSelector: untitledRangeLanguageSelector,
}
);
}