我已经构建了一个小的React组件,它通过ajax调用从REST服务中获取json数据。
在tutorial中,您可以将组件数据prop更改为url,您可以从中获取数据:
ReactDOM.render(
<CommentBox url="/api/comments" />,
document.getElementById('content')
);
现在,问题是REST API需要以下方式参数:
/api/resource/parametervalue
表示从服务器获取的数据根据参数而变化。
需要传递给REST API的参数在以下方式的当前URL的PATH中:
/mywebsite/dynamicparameter
一种方法是使用javascript获取url参数:
var pathArray = window.location.pathname.split( '/' );
var lastParameter = pathArray.pop();
var url = "/api/resource/"+lastParameter;
将该url变量传递给组件:
ReactDOM.render(
<CommentBox url={url} />,
document.getElementById('content')
);
我调查了React Router,但我不确定它是否真的有助于解决这个问题。
用参数表示和定义React组件数据url的最佳和最优雅的方法是什么?是否有React解决方案?