Использование ZOD с JavaScript, как мне изменить значение одной опоры в моем объекте ZOD, в то же время используя преимущества проверки?import * as z from 'zod';
const MyObjectSchema = z.strictObject({
prop1: z.number().gte(5), // Any number >= 5.
prop2: z.string(), // Any string.
prop3: z.array(z.number()) // Array of any numbers.
});
// The following executes with no errors, and sets the props as specified.
const myThing = MyObjectSchema.parse({
prop1: 99,
prop2: 'Slartibartfast',
prop3: [1, 43, 1]
});
// The following is legal, with no error thrown, despite the "gte(5)" above;
// because this assignment doesn't use Zod's parse() for validation.
myThing.prop1 = 1;
// The following throws an error, because Zod's parse() wants the entire object
// submitted, not a single prop.
myThing = MyObjectSchema.parse({ prop1: 40 });
< /code>
Мой поиск предполагает, что мне нужно проанализировать весь объект каждый раз, когда я хочу менять одну опору, если я хочу проверку; или еще написать функции обертки. Может ли это быть правдой? Я уникально плохой программист, который просто хочет сделать myobject.prop2 = 4; не устанавливая 100 свойств моего большого объекта? Tia.
Подробнее здесь: https://stackoverflow.com/questions/797 ... ject-in-js