首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到变量: URLSearchParams

找不到变量: URLSearchParams
EN

Stack Overflow用户
提问于 2017-04-09 02:42:00
回答 2查看 13.3K关注 0票数 11

在React Native中,我想对URLSearchParams进行抽象,所以我编写了这个类:

代码语言:javascript
复制
export class HttpSearchParamsAdapter extends URLSearchParams implements HttpSearchParams {

constructor() {
    super();
}

set(param: string, val: string): void {
    super.set(param, val);
    }
}

但是当我构建应用程序时,我遇到了这个错误: Can't find variable: URLSearchParams。我使用来自es6的URLSearchParams。

EN

回答 2

Stack Overflow用户

发布于 2019-01-04 17:01:01

正如mrgoos所说,在使用JavaScript Core的iOS中不支持URLSearchParams,你可以添加一个polyfill到React Native。

例如,我在使用wretch时遇到了问题,所以我全局使用了这个polyfill:url-search-params-polyfill

代码语言:javascript
复制
// index.js
import 'url-search-params-polyfill';

更新(用于React Native 0.59)

在React Native 0.59中,开发人员使用throw new Error('not implemented');“实现”了URLSearchParams的一些方法,因此...它不幸地失败了。

你可以在这里阅读这个问题:https://github.com/facebook/react-native/issues/23922

我们可以使用whatwg-url实现和buffer包来代替我使用的polyfill,如下所示:https://github.com/facebook/react-native/issues/23922#issuecomment-476070032

代码语言:javascript
复制
// index.js
import { URL, URLSearchParams } from 'whatwg-url';
import { Buffer } from 'buffer';

// react-native 0.59 added its own global URLSearchParams without implementation...
// https://github.com/facebook/react-native/blob/e6057095adfdc77ccbbff1c97b1e86b06dae340b/Libraries/Blob/URL.js#L66
// Issue: https://github.com/facebook/react-native/issues/23922
global.Buffer = Buffer;
global.URL = URL;
global.URLSearchParams = URLSearchParams;
票数 16
EN

Stack Overflow用户

发布于 2017-06-19 22:04:17

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43298987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档