typescript 库如何向用户提供bindData函数?

kb5ga3dv  于 2022-12-14  发布在  TypeScript
关注(0)|答案(1)|浏览(110)

例如,我需要复制Axios的“create”函数的行为:

// fileOne.js
import axios from 'axios';

const instance = axios.create({
  baseURL: 'https://some-domain.com/api'
});

然后在另一个文件中使用该baseURL,使用另一个函数如下:

// fileTwo.js
import axios from 'axios';

axios.get('/user/12345'); // https://some-domain.com/api/user/12345

结果如下:******
Axios如何绑定其库中的baseURL数据。
我在找那个图书馆,但我不明白他们是怎么做到的。

5lhxktic

5lhxktic1#

请参见官方文档Config Defaults部分。
您可以指定将应用于每个请求的配置默认值。

全局axios默认值

axios.defaults.baseURL = 'https://some-domain.com/api';

// use it later
axios.get('/user/12345')

自定义示例默认值

const instance = axios.create({
  baseURL: 'https://some-domain.com/api'
});

// use it later
instance.get('/user/12345')
  • axios v1.2.1* 的源代码说明

Axios类有一个defaults属性,axios将在分派请求时合并配置。axios包将调用createInstance来创建Axios类的一个axios示例,该示例带有内置的默认配置。
有一个buildFullPath函数可以使用baseURLrequestedURL构建完整的请求URL(可以合并绝对或相对URL,在您的情况下是/user/12345

相关问题