补充知识
toLocaleString
方法是用于返回格式化对象后的字符串,该字符串格式因不同语言而不同。可以通过传参决定返回的语言与具体的表现,某些场景下相当有用,语法如下:
object.toLocaleString([locales [, options]]);
toUpperCase()
方法用于把字符串转换为大写。
stringObject.toUpperCase()
核心代码
- config
// 请求连接前缀
export const baseUrl = 'https://ms-api.caibowen.net';
- request.js
import Taro from '@tarojs/taro';
import {
baseUrl,
noConsole
} from '../config';
const request_data = {
platform: 'wap',
rent_mode: 2,
};
export default (options = {
method: 'GET',
data: {}
}) => {
return Taro.request({
url: baseUrl + options.url,
data: {
...request_data,
...options.data,
},
header: {
'Content-Type': 'application/json',
},
method: options.method.toUpperCase(),
}).then(res => {
const {
statusCode,
data
} = res;
if (statusCode >= 200 && statusCode < 300) {
if (data.status !== 'ok') {
Taro.showToast({
title: `${res.data.error.message}~` || res.data.error.code,
icon: 'none',
mask: true,
});
}
return data;
} else {
throw new Error(`网络请求错误,状态码${statusCode}`);
}
});
};
- 页面请求方法模块 service.js
import Request from '../../utils/request';
export const homepage = data =>
Request({
url: '/homepage-v3',
method: 'GET',
data,
});
export const product = data =>
Request({
url: '/product/filter',
method: 'GET',
data,
});
- 页面内使用对应方法
import * as detailApi from './service';
async getGoodsInfo(goodsId) {
const res = await detailApi.product({
id: goodsId,
});
}