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


TypeScript utilities.Customizations類代碼示例

本文整理匯總了TypeScript中@uifabric/utilities.Customizations的典型用法代碼示例。如果您正苦於以下問題:TypeScript Customizations類的具體用法?TypeScript Customizations怎麽用?TypeScript Customizations使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了Customizations類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: getThemedContext

export function getThemedContext(context: ICustomizerContext, scheme?: ISchemeNames, theme?: ITheme): ICustomizerContext {
  let newContext: ICustomizerContext = context;
  let newSettings;

  // Only fall back to context and customizations when theme arg is not provided.
  let schemeSource = theme || Customizations.getSettings(['theme'], undefined, context.customizations).theme;

  if (theme) {
    newSettings = { theme };
  }

  const schemeTheme: ITheme | undefined = scheme && schemeSource && schemeSource.schemes && schemeSource.schemes[scheme];

  // These first two checks are logically redundant but TS doesn't infer schemeSource.schemes is defined when schemeTheme is defined.
  if (schemeSource && schemeTheme && schemeSource !== schemeTheme) {
    newSettings = { theme: schemeTheme };
    newSettings.theme.schemes = schemeSource.schemes;
  }

  if (newSettings) {
    newContext = {
      customizations: {
        settings: mergeSettings(context.customizations.settings, newSettings),
        scopedSettings: context.customizations.scopedSettings
      }
    };
  }

  return newContext;
}
開發者ID:OfficeDev,項目名稱:office-ui-fabric-react,代碼行數:30,代碼來源:scheme.ts

示例2: loadTheme

export function loadTheme(theme: IPartialTheme, depComments: boolean = false): ITheme {
  _theme = createTheme(theme, depComments);

  // Invoke the legacy method of theming the page as well.
  legacyLoadTheme({ ..._theme.palette, ..._theme.semanticColors, ..._loadFonts(_theme) });

  Customizations.applySettings({ [ThemeSettingName]: _theme });

  _onThemeChangeCallbacks.forEach((callback: (theme: ITheme) => void) => {
    try {
      callback(_theme);
    } catch (e) {
      // don't let a bad callback break everything else
    }
  });

  return _theme;
}
開發者ID:OfficeDev,項目名稱:office-ui-fabric-react,代碼行數:18,代碼來源:theme.ts

示例3: createTheme

import { DefaultSpacing } from './DefaultSpacing';
import { loadTheme as legacyLoadTheme } from '@microsoft/load-themed-styles';
import { DefaultEffects } from './DefaultEffects';

let _theme: ITheme = createTheme({
  palette: DefaultPalette,
  semanticColors: _makeSemanticColorsFromPalette(DefaultPalette, false, false),
  fonts: DefaultFontStyles,
  isInverted: false,
  disableGlobalClassNames: false
});
let _onThemeChangeCallbacks: Array<(theme: ITheme) => void> = [];

export const ThemeSettingName = 'theme';

if (!Customizations.getSettings([ThemeSettingName]).theme) {
  let win = typeof window !== 'undefined' ? window : undefined;

  // tslint:disable:no-string-literal no-any
  if (win && (win as any)['FabricConfig'] && (win as any)['FabricConfig'].theme) {
    _theme = createTheme((win as any)['FabricConfig'].theme);
  }
  // tslint:enable:no-string-literal no-any

  // Set the default theme.
  Customizations.applySettings({ [ThemeSettingName]: _theme });
}

/**
 * Gets the theme object
 * @param depComments - Whether to include deprecated tags as comments for deprecated slots.
開發者ID:OfficeDev,項目名稱:office-ui-fabric-react,代碼行數:31,代碼來源:theme.ts


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