小编Seb*_*yra的帖子

Typescript 类型,其中对象仅由一组可能属性中的单个属性组成

我正在尝试使用类型系统对特定模式进行建模,其中对象仅由一组可能属性中的单个属性组成。

换句话说,该类型将是部分类型,但只允许一个属性。

interface PossibleProperties {
  cat?: AllPropsOfSameType;
  dog?: AllPropsOfSameType;
  cow?: AllPropsOfSameType;
}

interface ShouldBeExactlyOneOfPossibleProperties {
  [P in keyof PossibleProperties]: AllPropsOfSameType; // Wupz, this allows for 0 or more...
}
Run Code Online (Sandbox Code Playgroud)

我见过需要至少一个属性的解决方案:

type AtLeastOne<T, U = {[K in keyof T]: Pick<T, K> }> = Partial<T> & U[keyof U]
Run Code Online (Sandbox Code Playgroud)

但我需要类似AtMostOne<T, U = {[K in keyof T]: Pick<T, K> }>or 的东西ExactlyOne<T, U = {[K in keyof T]: Pick<T, K> }>,它可能是AtMostOneand的交集类型AtLeastOne

如果这可能的话有什么想法吗?

typescript

10
推荐指数
2
解决办法
8356
查看次数

在Google Chrome中,Google文档可以通过javascript控制页眉和页脚.有谁知道这是如何实现的?

基本上就是这样.不知何故,Google文档中的javascript可以关闭显示网址,日期,网页编号等的默认页眉和页脚.

这仅适用于Google Chrome.当Google Docs从其他浏览器运行时,它将打印页眉/页脚,除非通过打印配置对话框手动删除.在Safari中,它似乎生成一个PDF服务器端,当然它将在浏览器外打印.

我在网上搜索过,并没有发现如何做到这一点.页面中的javascript当然是缩小和混淆的,因此很难从中获得任何见解.

因此,在我被迫潜入意大利面之前,我想知道是否有人对如何做到这一点有任何想法.

javascript printing google-chrome header

7
推荐指数
1
解决办法
1万
查看次数

我想在“ npm install”时下载一些资源,大概使用“ prepublish”脚本

具体来说,我想在运行“ npm install”时下载angular.min.js。

根据我在此处阅读的内容,在预发布脚本中可以进行此类操作。它还提到我不需要依靠在系统上安装wget / curl。

但是,它没有详细介绍如何执行此操作。

有人知道怎么做吗?

node.js npm

3
推荐指数
1
解决办法
405
查看次数

标签 统计

google-chrome ×1

header ×1

javascript ×1

node.js ×1

npm ×1

printing ×1

typescript ×1