需要将数据从reactjs传递到服务器.js文件突出了项目的一部分,而不是单独的一部分。问题在于似乎在Symfony中找不到路线
profile:
path: /profile/{slug}
defaults: { _controller: MyBundle:Agent:profile }
在AgentController中
public function profileAction(Request $request, $slug)
Reactjs文件
axios.get('/profile',{
params: {
slug:agent.slug,
id:agent.id
}
}).then((res) => {
console.log(res, 'the response')
}).catch((err) => console.log(err.toString(), 'error'))
但是我不断收到错误路由,找不到相关的错误,有什么想法吗?
答案 0 :(得分:1)
您生成的axios请求将不会执行所需的请求,但会在没有任何路由参数的情况下执行以下请求:
/profile
应该是以下路线
/profile/{agent.slug}
您可以为此使用template literals
axios.get(`/profile/${agent.slug}`)
.then((res) => {
console.log(res, 'the response')
}).catch((err) => console.log(err.toString(), 'error'))
如果您不使用webpack或其他任何花哨的东西,则需要自己连接字符串。
axios.get(`/profile/` + agent.slug)
.then((res) => {
console.log(res, 'the response')
}).catch((err) => console.log(err.toString(), 'error'))
请注意,您的agent.slug参数永远不会不确定。
您也可以在使用SymfonyFramework时使用FOSJsRoutingBundle。使用此功能,您可以使用:
axios.get(Routing.generate('profile', {slug: agent.slug})
.then((res) => {
console.log(res, 'the response')
}).catch((err) => console.log(err.toString(), 'error'))