如果妳需要保留數值類型,可以在Axios的配置中設置transformResponse屬性,手動解析JSON數據並保留數值類型。示例如下:
axios({
method: 'get',
url: '/api/data',
transformResponse: [function (data) {
return JSON.parse(data, (key, value) => {
if (typeof value === 'string' && /^-?\d+(\.\d+)?$/.test(value)) {
return parseFloat(value);
}
return value;
});
}]
})
這裏的transformResponse屬性是壹個函數數組,可以定義多個解析響應數據的函數,Axios會按照數組順序依次調用這些函數。在上面的示例中,我們定義了壹個函數來解析JSON數據,判斷每個屬性值是否是壹個數值字符串,如果是就手動轉換為數值類型並返回,否則返回原值。