小编leo*_*mes的帖子

将 ErrorText 添加到 Material-ui Textfield 会移动其他元素

我在 React 应用程序中有一个注册表单。我正在使用 Material-ui TextField 并使用 errorText 属性在输入中有错误时添加消息。

errorText={this.state.messages.emailMessage}
Run Code Online (Sandbox Code Playgroud)

state.messages.emailMessage 最初设置为 null,因此 TextField 在首次呈现输入时没有用于消息的额外空间。

添加消息后,它会移动其他元素。

如果需要,如何为新节点留出空间,以便其他元素不被移动?我尝试将消息的初始状态设置为“ ”,但这会将输入颜色设置为红色以表示错误,并且无论如何都不起作用!

reactjs material-ui

8
推荐指数
2
解决办法
9277
查看次数

destructuring数组如何获取length属性

我在一篇文章中遇到了这种解构表达.

const words = ['oops', 'gasp', 'shout', 'sun'];
let { length } = words;
console.log(length); // 4
Run Code Online (Sandbox Code Playgroud)

如何length获得4的值?我知道.length是数组的属性,但这种语法是如何工作的?它似乎正在做let length = words.length;,事实上在babel确实输出它.但我的问题是它背后的逻辑是什么?令我困惑的是一系列价值观的混合和使用{length}.

我已经阅读了MDN的描述,但无法看到这个例子的解释.

javascript arrays destructuring

6
推荐指数
2
解决办法
2440
查看次数

Winston 自定义日志级别打字稿定义

我正在开发一个节点应用程序并使用 Typescript。我有winston 3。在我的代码中我添加了自定义日志级别;

const myCustomLevels = {
    levels: {
        data: 10,
        protocol: 9,
        debug: 8,
        info: 7,
        notice: 6,
        note: 5,
        warn: 4,
        error: 3,
        crit: 2,
        alert: 1,
        emerg: 0,
    }
}
Run Code Online (Sandbox Code Playgroud)

然后

const logger = winston.createLogger({
    level: data,
    levels: myCustomLevels.levels,
    format: winston.format.combine(
        winston.format.json()
    ),
    transports: [new winston.transports.Console()],
});
Run Code Online (Sandbox Code Playgroud)

我需要帮助解决的问题是当我使用 Typescript 记录器时发出的抱怨。

logger.protocol({});
Run Code Online (Sandbox Code Playgroud)

在本例中,类型为const logger: winston.Logger,并且 ts 表示[ts] Property 'protocol' does not exist on type 'Logger'. [2339]。Typescript 不知道我的水平。

我该如何纠正这个问题,以便tsc了解我在记录器上的级别?

winston typescript

6
推荐指数
1
解决办法
4274
查看次数

打字稿项目参考和 JavaScript 文件

我有一个混合TS和JS项目,与正常工作allowJS: true的环境tsconfig

我现在想使用需要的项目引用composite: true这意味着allowJS不能使用。

这是否意味着我只能在纯打字稿项目中使用项目引用?

当我tsc -b因为不包含 js 文件而运行时,输出代码缺少声明!

我如何仍然在我的项目中包含 js 代码但使用较新的项目引用?

typescript tsc tsconfig

6
推荐指数
1
解决办法
198
查看次数

这个JS如何计算奇数或偶数

在阅读 Javascript Allonge 时,我陷入了试图找出原因的困境中;

((n) => {
  const even = (x) => {
    if (x === 0)
      return true;
    else
      return !even(x - 1);
  }
  return even(n)
})(97)
Run Code Online (Sandbox Code Playgroud)

根据提供的数字是奇数还是偶数返回 true 或 false。

当我查看它时,我认为它正在检查提供的数字是否为 0,如果不是减去 1,则再次检查。这意味着数字最终达到 0 并返回 true。这显然不是正在发生的事情,因为 97 返回 false,96 返回 true。

我在这里唯一不知道的是之前的爆炸声return !even(x -1);

javascript boolean arrow-functions

4
推荐指数
1
解决办法
751
查看次数

将 CAPSLOCK 更改为 Ctrl Archlinux 命令行

我的 iMac 上有 Tmux 设置,因此CAPSCtrl交换并且C-a是前缀。在我的旧笔记本电脑上,我有没有 Xwindows 的 archlinux,我不知道如何重新映射这些键。在 Mac 上,这很简单。我如何在我的准系统 linux 设置上做到这一点?

linux keyboard key-bindings tmux

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

保持对管道运算符之间变量的访问

我一直在尝试在节点应用程序中使用 Rxjs。fileList$是从fs.readdirsync(字符串数组)的返回。

第一个map()有一个名为 filename 的参数。

flatMap() readFileAsObservable()用于bindNodeCallback(fs.readFile)读取文件。

我的班级Testian需要 2 个参数;通过yaml-js读取文件和filename从第一张地图创建的对象。如何filename在我指定的管道中访问?

fileList$
    .pipe(
        map((filename: string) => `${resolvedDirPath}/${filename}`),
        flatMap(
            (filePath: string) => readFileAsObservable(filePath, 'utf8') as Observable<string>
        ),
        map((fileData: string) => yaml.safeLoad(fileData) as ITestYaml),
        map((testYaml: ITestYaml) => new Testian(testYaml, [I want to use filename here])),
        flatMap((testYaml: Testian) => {
            const prom: Promise<{}> = activeTests.set(testYaml);
            outgoing.sendTest(testYaml);
            return from(prom);
        })
    )
Run Code Online (Sandbox Code Playgroud)

node.js rxjs6

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

如何停止vim colorscheme对可见制表符使用错误的颜色

在我的 vim 设置中,我用set list. 我正在使用日光化的黑暗主题,但改变主题我仍然遇到同样的问题,有时甚至更糟!制表符显示的颜色与背景不同。

彩色标签

我如何阻止这种行为,因为它应该是微妙的,但效果却是压倒性的!

vim vim-syntax-highlighting

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

如何动态填充页面1个字母

我在页面上有一个字母.我希望它真的很大(我的字体大小设置为2000%!).如何使其响应以使其位于所有屏幕的中心?在大小的情况下,我知道在调整浏览器大小时,字母周围的填充是一个真正的问题.我正在尝试为儿童制作闪存卡以学习他们的信件.

html css

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