當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript workspace.workspaceFolders.reduce方法代碼示例

本文整理匯總了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,
        }
    );
}
開發者ID:JulioC,項目名稱:prettier-vscode,代碼行數:47,代碼來源:extension.ts


注:本文中的vscode.workspace.workspaceFolders.reduce方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。