本文整理匯總了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,
}
);
}