【问题标题】:set mobx store in const value in react native在本机反应中将 mobx 存储在 const 值中
【发布时间】:2020-12-19 07:57:37
【问题描述】:

如何使用 mobx 观察数据设置 const 值?因为我不知道如何在这里定义道具。

export const BASE_URL = base_url_from_mobx

我在这个函数中有一些数据。从那里我将有一些机密数据和一个基本网址。这个 ApiKeys 是一个原生模块

ApiKeys.getApiKeys((data)=>{
    let secureData = JSON.parse(data)
}

我有一个 api.js 文件,我在其中设置拦截器并设置基本 url,如下所示

const api = axios.create({
    baseURL: BASE_URL,
    timeout: 10 * 1000,
    headers: {
        'content-type': 'application/json',
    }
});

这里 BASE_URL 被定义并导出为 constants.js 文件中的 const 但现在我想根据我从函数中获得的值来设置它。 如果我可以像下面那样做,就可以做到这一点

const api = axios.create({
    // baseURL: BASE_URL,
    baseURL: (JSON.parse(AsyncStorage.getItem(SECURE_KEY))).SOHOJ_APP_API_BASE_URL_DEVELOPMENT,
    timeout: 10 * 1000,
    headers: {
        'content-type': 'application/json',
    }
});

但它给了我这样的问题

我该怎么做。我曾经使用 api.js

发出如下请求
api
    .post('api_end_point',parameters,headers)
    .then(response=>{

    })
    .catch(error =>{

    })

谢谢

【问题讨论】:

    标签: react-native api axios mobx asyncstorage


    【解决方案1】:

    这意味着你的 AsyncStorage.getItem(SECURE_KEY) 有问题,可能不是正确的 json 对象。做一个AsyncStorage.getItem(SECURE_KEY) 的控制台日志,看看你得到了什么值。

    【讨论】:

    • 将AsyncStorage.getItem(SECURE_KEY)的console.log的输出粘贴到这里
    • 当我这样做时.. AsyncStorage.getItem(SECURE_KEY).then(value =>{ console.log('SECURE_KEY: ',value) }) 我得到了数据,但我不能在里面这样做那里...请看我的 const api
    • 我没找到你?我只是问你从 AsyncStorage.getItem(SECURE_KEY) 得到什么输出?
    • 我得到一个 json 字符串作为输出......然后我把它变成一个 json 对象......但问题出在 promise
    • 是的,所以我说要粘贴 json 字符串输出。因为在解析该 json 字符串时出错。
    猜你喜欢
    • 2017-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-18
    • 2018-04-10
    • 2020-10-25
    相关资源
    最近更新 更多