小编Sam*_*jig的帖子

是否可以在 Zod 中链接正则表达式?

我试图为单个输入字段链接多个正则表达式。尽管它检查了每个正则表达式,但屏幕上仅显示第一个正则表达式的错误消息。是否有可能在 Zod 中链接正则表达式?如果不是,什么是实现相同结果的良好替代解决方案。这是我的代码片段:

export const Schema = z.object({
  fullname: z
    .string()
    .regex(new RegExp(/^[a-zA-Z]+[-'s]?[a-zA-Z ]+$/), 'Name should contain only alphabets')
    .regex(new RegExp(/^[a-zA-Z]+\s+[a-zA-Z]+$/), 'Please enter both firstname and lastname')
    .min(2, 'Name should have atleast 2 alphabets'),
});
Run Code Online (Sandbox Code Playgroud)

每种情况都会显示“名称应仅包含字母”----->

validation zod

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

在react js中如何检查输入的值是数字还是字符串?

我想检查类型文本输入的值是数字还是字符串,如下所示:

<input
  type="text"
  onChange={(e) => {
  const value = e.target.value;
    console.log(typeof value);
  }}
/>
Run Code Online (Sandbox Code Playgroud)

但是,当我输入文本或数字时,控制台会在这两种情况下记录字符串。

如何检查react js中输入类型文本的值是否为数字?

javascript validation input reactjs

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

如何在zod中制作自定义错误消息?

我正在尝试为 zod 验证编写自定义错误消息。

这是我的架构对象,我在错误消息中传递了它。

const schema: ZodType<FormData> = z.object({
    firstName: z.string().nonempty(),
    lastName: z.string().nonempty(),
    email: z.string().email().min(5).nonempty(),
    pin: z.string( { invalid_type_error: "Must contain 4 digitsss "}).nonempty().min(4, "Must be 4 digits").max(4, "Must be 4 digits").regex(pinPattern),
    phoneNumber: z.string().nonempty().min(11),
    password: z.string().min(8).regex(Passwordregex).nonempty(),
    confirmPassword: z.string().min(8).nonempty(),
  }).refine(data => data.password === data.confirmPassword, {
    message: "Passwords don't match",
    path: ['confirmPassword']
  })
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我尝试过字符串替换方法,但没有得到我想要的结果。

 {errors.
<span className='text-xs font-medium text-[#DC2626]'>{errors.firstName.message?.replace('String', 'First Name')}</}
Run Code Online (Sandbox Code Playgroud)

forms typescript reactjs react-hook-form zod

5
推荐指数
2
解决办法
2万
查看次数

有没有办法在 TypeScript 中将多种类型的数据放入数组中?

这是我要问的一个例子。
假设我们有两个接口,Cats并且Dogs。如何制作一个可以同时容纳Cats和 的数组Dogs

interface Cats {
  name: string;
  age: number;
}

interface Dog {
  owner: string;
}

const cat1: Cats = {
  name: "Jimmy",
  age: 5,
}

const dog1: Dogs = {
  owner: "Bobby",
}

// The line below doesn't work how I think it would work
const animalsList: Array<Cats> | Array<Dogs> = [cat1, dog1];
Run Code Online (Sandbox Code Playgroud)

该变量animalsList应该能够同时包含CatsDogs,但我收到诸如
“类型Dogs无法分配给类型Array<Cats>”之类的错误

arrays types conditional-statements type-declaration typescript

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

如果 C++ 中的一个变量为空,是否有一种速记方法可以打印不同的变量?

我正在尝试用 C++ 编写一个缩小的 FizzBu​​zz 程序,因为我现在正在学习它。我想知道是否有一种速记方式可以说“如果此字符串存在,则返回此字符串,否则,返回下一部分”

在 JavaScript 中,使用||运算符的工作方式与我想的一样:

function fizzbuzz() {
  const maxNum = 20; // Simplified down to 20 just for example
  for (let i = 1; i <= maxNum; i++) {
    let output = "";
    if (i % 3 == 0) output += "Fizz";
    if (i % 5 == 0) output += "Buzz";
    console.log(output || i); // If the output has something, print it, otherwise print the number
  }
}

fizzbuzz();
Run Code Online (Sandbox Code Playgroud)

当我在 C++ 中尝试这个时,

#include <iostream> …
Run Code Online (Sandbox Code Playgroud)

c++ string fizzbuzz translate

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

我在比较两个日语字符串时遇到问题

尽管两个日语字符串看起来相同,但为什么在 JavaScript 中进行比较时它们不能给出正确的结果?

\n
const str1 : string="\xe5\xbb\xa3\xe7\x80\xac\xe5\x92\x8c\xe5\xbb\xa3"\nconst str2 : string="\xe5\xbb\xa3\xe7\x80\xa8\xe5\x92\x8c\xe5\xbb\xa3"\nif(str1 === str2){\n  console.log('true')\n} else {\n  console.log('false')\n}\n
Run Code Online (Sandbox Code Playgroud)\n

但结果是假的

\n
false\n
Run Code Online (Sandbox Code Playgroud)\n

有谁知道为什么请帮助我

\n

javascript node.js typescript

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