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


TypeScript schematics.chain函數代碼示例

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


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

示例1: return

  return (host: Tree, context: SchematicContext) => {
    if (options.module) {
      options.module = findModuleFromOptions(host, options);
    }

    const templateSource = apply(url('./files'), [
      options.spec ? noop() : filter(path => !path.endsWith('__spec.ts')),
      template({
        ...stringUtils,
        'if-flat': (s: string) =>
          stringUtils.group(
            options.flat ? '' : s,
            options.group ? 'effects' : ''
          ),
        ...(options as object),
        dot: () => '.',
      }),
      move(sourceDir),
    ]);

    return chain([
      branchAndMerge(
        chain([
          filter(
            path =>
              path.endsWith('.module.ts') &&
              !path.endsWith('-routing.module.ts')
          ),
          addImportToNgModule(options),
          mergeWith(templateSource),
        ])
      ),
    ])(host, context);
  };
開發者ID:WinGood,項目名稱:platform,代碼行數:34,代碼來源:index.ts

示例2: return

  return (host: Tree, context: SchematicContext) => {
    const workspace = getWorkspace(host);
    if (!options.project) {
      throw new SchematicsException('Option (project) is required.');
    }
    const project = workspace.projects[options.project];

    if (options.path === undefined) {
      options.path = buildDefaultPath(project);
    }

    const parsedPath = parseName(options.path, options.name);
    options.name = parsedPath.name;
    options.path = parsedPath.path;

    const templateSource = apply(url('./files'), [
      template({
        ...strings,
        ...options,
      }),
      move(parsedPath.path),
    ]);

    return chain([
      branchAndMerge(chain([
        mergeWith(templateSource),
      ])),
      options.lintFix ? applyLintFix(options.path) : noop(),
    ]);
  };
開發者ID:rexebin,項目名稱:angular-cli,代碼行數:30,代碼來源:index.ts

示例3: return

  return (host: Tree) => {
    if (!options.project) {
      throw new SchematicsException('Option (project) is required.');
    }
    const project = getProject(host, options.project);

    if (options.path === undefined) {
      options.path = buildDefaultPath(project);
    }

    const parsedPath = parseName(options.path, options.name);
    options.name = parsedPath.name;
    options.path = parsedPath.path;

    // todo remove these when we remove the deprecations
    options.skipTests = options.skipTests || !options.spec;

    const templateSource = apply(url('./files'), [
      options.skipTests ? filter(path => !path.endsWith('.spec.ts')) : noop(),
      template({
        ...strings,
        ...options,
      }),
      move(parsedPath.path),
    ]);

    return chain([
      branchAndMerge(chain([
        mergeWith(templateSource),
      ])),
      options.lintFix ? applyLintFix(options.path) : noop(),
    ]);
  };
開發者ID:DevIntent,項目名稱:angular-cli,代碼行數:33,代碼來源:index.ts

示例4: return

  return (tree: Tree, context: SchematicContext) => {

    options.path = '/src/framework/theme/components/';
    options.prefix = 'nb';
    options.selector = options.selector || buildSelector(options);

    const parsedPath = parseName(options.path, options.name);
    options.name = parsedPath.name;
    options.path = parsedPath.path;

    options.className = buildClassName(options);

    const templateSource = apply(url('./files'), [
      template({
        ...strings,
        ...options,
      }),
    ]);

    return chain([
      branchAndMerge(chain([
        mergeWith(templateSource),
      ])),
    ])(tree, context);
  };
開發者ID:kevinheader,項目名稱:nebular,代碼行數:25,代碼來源:index.ts

示例5: return

  return (host: Tree, context: SchematicContext) => {
    options.path = getProjectPath(host, options);

    const parsedPath = parseName(options.path, options.name);
    options.name = parsedPath.name;
    options.path = parsedPath.path;

    const templateSource = apply(url('./files'), [
      options.spec ? noop() : filter(path => !path.endsWith('__spec.ts')),
      template({
        'if-flat': (s: string) =>
          stringUtils.group(
            options.flat ? '' : s,
            options.group ? 'actions' : ''
          ),
        ...stringUtils,
        ...(options as object),
        dot: () => '.',
      } as any),
      move(parsedPath.path),
    ]);

    return chain([branchAndMerge(chain([mergeWith(templateSource)]))])(
      host,
      context
    );
  };
開發者ID:AlexChar,項目名稱:platform,代碼行數:27,代碼來源:index.ts

示例6: return

  return (host: Tree, context: SchematicContext) => {
    const workspace = getWorkspace(host);
    if (!options.project) {
      throw new SchematicsException('Option (project) is required.');
    }
    const project = workspace.projects[options.project];

    if (options.path === undefined) {
      const projectDirName = project.projectType === 'application' ? 'app' : 'lib';
      options.path = `/${project.root}/src/${projectDirName}`;
    }

    const parsedPath = parseName(options.path, options.name);
    options.name = parsedPath.name;
    options.path = parsedPath.path;

    options.prefix = options.prefix ? options.prefix : '';
    options.type = !!options.type ? `.${options.type}` : '';

    const templateSource = apply(url('./files'), [
      template({
        ...strings,
        ...options,
      }),
      move(parsedPath.path),
    ]);

    return chain([
      branchAndMerge(chain([
        mergeWith(templateSource),
      ])),
    ])(host, context);
  };
開發者ID:iwe7,項目名稱:devkit,代碼行數:33,代碼來源:index.ts

示例7: return

  return (host: Tree, context: SchematicContext) => {
    const workspace = getWorkspace(host);
    if (Object.keys(workspace.projects).length <= 0) {
      throw new SchematicsException('Could not find any project.');
    }
    if (!schema.project) {
      schema.project = Object.keys(workspace.projects)[0];
    }
    const project = workspace.projects[schema.project];

    resolveSchema(host, project, schema);

    schema.componentName = buildComponentName(schema, (project as any).prefix);

    const templateSource = apply(url('./files'), [
      schema.spec ? noop() : filter(path => !path.endsWith('.spec.ts')),
      schema.inlineStyle
        ? filter(path => !path.endsWith('.__styleext__'))
        : noop(),
      schema.inlineTemplate ? filter(path => !path.endsWith('.html')) : noop(),
      template({
        ...strings,
        'if-flat': (s: string) => (schema.flat ? '' : s),
        ...schema,
      }),
      move(null, schema.path + '/'),
    ]);

    return chain([
      branchAndMerge(
        chain([addDeclaration(schema), mergeWith(templateSource)]),
      ),
    ])(host, context);
  };
開發者ID:wexz,項目名稱:delon,代碼行數:34,代碼來源:alain.ts

示例8: return

  return (host: Tree, context: SchematicContext) => {
    const workspace = getWorkspace(host);
    if (!options.project) {
      throw new SchematicsException('Option "project" is required.');
    }
    const project = workspace.projects[options.project];
    if (project.projectType !== 'application') {
      throw new SchematicsException(`PWA requires a project type of "application".`);
    }

    const assetPath = join(project.root as Path, 'src', 'assets');
    const sourcePath = join(project.root as Path, 'src');

    options.title = options.title || options.project;

    const templateSource = apply(url('./files/assets'), [
      template({
        ...options,
      }),
      move(assetPath),
    ]);

    return chain([
      addServiceWorker(options),
      branchAndMerge(chain([
        mergeWith(templateSource),
      ])),
      mergeWith(apply(url('./files/root'), [
        template({...options}),
        move(sourcePath),
      ])),
      updateIndexFile(options),
      addManifestToAssetsConfig(options),
    ])(host, context);
  };
開發者ID:iwe7,項目名稱:devkit,代碼行數:35,代碼來源:index.ts


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