• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

TypeScript itch-promise.promisify函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了TypeScript中common/util/itch-promise.promisify函数的典型用法代码示例。如果您正苦于以下问题:TypeScript promisify函数的具体用法?TypeScript promisify怎么用?TypeScript promisify使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了promisify函数的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。

示例1: promisify

 * Let's patch all the things! Electron randomly decides to
 * substitute 'fs' with their own version that considers '.asar'
 * files to be read-only directories.
 *
 * Since itch can install applications that have .asar files, that
 * won't do.
 *
 * We want sf to operate on actual files, so we need to operate some
 * magic for various modules to use the original fs module, not the
 * asar-aware one.
 */

import { EventEmitter } from "events";

type Mkdirp = (path: string, opts?: any) => Promise<void>;
export const mkdirp: Mkdirp = promisify(require("mkdirp")) as any;

type Rimraf = (path: string, opts?: any) => Promise<void>;
const rimraf: Rimraf = promisify(require("rimraf")) as any;

export const nodeReaddir = (promisify(fs.readdir) as any) as typeof readdir;
export const nodeReadFile = (promisify(fs.readFile) as any) as typeof readFile;
export const nodeWriteFile = (promisify(
  fs.writeFile
) as any) as typeof writeFile;
export const nodeAppendFile = (promisify(
  fs.appendFile
) as any) as typeof appendFile;

export const utimes = (promisify(fs.utimes) as any) as (
  path: string,
开发者ID:HorrerGames,项目名称:itch,代码行数:31,代码来源:sf.ts


示例2: require

import yauzl from "yauzl";
import progress from "progress-stream";
import { ItchPromise, promisify } from "common/util/itch-promise";
const crc32 = require("crc-32");
const yauzlOpen = promisify(yauzl.open) as (
  path: string,
  options: yauzl.Options
) => Promise<yauzl.ZipFile>;

import * as sf from "../os/sf";
import { dirname, join } from "path";
import { createWriteStream } from "fs";
import { Logger } from "common/logger";
import { Stream } from "stream";
import { IProgressInfo } from "common/types";

interface UnzipOpts {
  archivePath: string;
  destination: string;
  logger: Logger;
  onProgress: (info: IProgressInfo) => void;
}

const DIR_RE = /\/$/;

export async function unzip(opts: UnzipOpts) {
  const { archivePath, destination, logger } = opts;
  await sf.mkdirp(destination);

  const zipfile = await yauzlOpen(archivePath, { lazyEntries: true });
  logger.debug(`Total zip entries: ${zipfile.entryCount}`);
开发者ID:HorrerGames,项目名称:itch,代码行数:31,代码来源:unzip.ts



注:本文中的common/util/itch-promise.promisify函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap