寻找一种解析URL以获取从链接接收到的React Native中的查询变量的方法。
我收到的网址如下:
URL应用内的方案:// SomePage的someVar = someVal
我想从网址获取someVar值。
有什么想法吗?
答案 0 :(得分:5)
这应该可以解决问题
var url = "http://example.com?myVar=test&otherVariable=someData&number=123"
var regex = /[?&]([^=#]+)=([^&#]*)/g,
params = {},
match;
while (match = regex.exec(url)) {
params[match[1]] = match[2];
}
console.log(params)

答案 1 :(得分:3)
您可以利用JS生态系统来实现这一目标。试试URI.js https://github.com/medialize/URI.js
答案 2 :(得分:3)
尝试网址https://www.npmjs.com/package/url
"此模块具有用于URL解析和解析的实用程序,旨在与node.js核心URL模块具有功能奇偶性。"
使用Chrome反馈原生调试器时,您的应用可以使用节点网址对象,但在不受限制时,iPhone上无法使用。
所以使用这个包
a...c...d
示例代码:
npm install url
答案 3 :(得分:3)
有一个 URL class in JavaScript 旨在让您稳健地构建和解析 URL,使查询参数易于访问:
const url = new URL('url-app-scheme://somePage?someVar=someVal');
url.searchParams.get('someVar')
遗憾的是,URL
在 React Native 中的实现并不完整and has some known bugs。幸运的是,有一个名为 react-native-url-polyfill 的可靠 polyfill 库,它提供了一个行为良好且经过测试的 URL
实现 - 我强烈推荐它。
答案 4 :(得分:2)
使用查询字符串工作
$ ssh $server cat << EOF
...command goes here...
EOF
答案 5 :(得分:1)
更新:这不是上述问题的解决方案,因为除非在调试模式下,否则它不起作用。我没有删除这个答案,因为我认为它指出了一个值得细微差别的说明。
React Native支持JavaScript自己的URL Web API(使用版本0.46)。您可以使用它来轻松地解析或构建网址的任何部分。
API与WHATWG API of the URL module in Node.js相同。这个答案应该更加明显,但很容易因为可用的url解析包的数量而丢失。
编辑:由于某种原因,这仅适用于JS调试模式,否则不起作用。所以这个解决方案并没有真正有效,但是我把它留在这里是因为我很想知道如何让相同的URL模块与react-native一起工作。