Ax ios: преобразовать одно свойство перед отправкой - PullRequest
0 голосов
/ 01 апреля 2020

В моем проекте я хочу отправить некоторые данные на сервер, используя axios.put() (this.$http в vue -ax ios). Однако я хочу заменить одно свойство (из многих) перед фактической отправкой данных. Если быть точным, свойство named содержит сложный объект, но я хочу преобразовать его в простую строку перед сериализацией, поэтому веб-интерфейс c# не должен беспокоить десериализацию объекта, а только сохраняет его в базе данных как есть.

Я уже нашел метод transformRequest. Но я предполагаю, что если бы я просто переписал свойство там, это чередовало бы мою модель представления. Следовательно: существует ли простой способ одностороннего преобразования этих данных перед отправкой?

await this.$http.put(
    `Settings/ViewerRoles/${this.$route.params.id}`,
    this.roleSettings,
    {
        transformRequest: [(data, headers) => {
            // This would overwrite the original property in my view model, right?
            return data.map(d => ({ d.myProp = JSON.stringify(d.myProp); return d; }));
        }, ...this.$http.defaults.transformRequest]
    }
);
...