如何在不刷新Laravel中的网页的情况下将变量从Controller传递到View?

时间:2019-06-08 17:43:30

标签: laravel

只要View内有对Controller的调用,我都希望Controller向View返回一些变量,而不刷新View。

已经知道: return view(“ webpage”,compact('variable1','variable2'));

我希望实现的目标: return compact('variable1','variable2');

这不会返回网页,而只会返回某些变量。


编辑: 从完全不同的角度思考问题,问题可能会这样改写

是否可以通过控制器操作网页的 REQUEST变量?这样,我就可以从Controller中获取新变量,而无需刷新网页。

1 个答案:

答案 0 :(得分:0)

这里没有很多工作要做,下面是一个示例:

Ajax调用:

   ComponentDidMount()
    {
        var accessToken = await GetAccessToken();
        debugger;
        if (accessToken === null) {
          this.props.navigation.navigate("Auth");
        }
    }

控制器功能:

$.ajax({
    url: '/your/route/',
    type: 'GET',
    data: {getVariable: formInputValue},
})
.done(function (data) {
    console.log(data);
})
.fail(function () {
    console.log('Failed');
});
  

更新:根据对此答案的评论,尝试一下,看看它是否对您有用。

在您的控制器中,您在其中获取记录而不是使用public function getVariable(Request $request){ $resault = $request->getVariable; return response()->json($results); } 将其更改为->get();,每页将返回5条记录。然后在您的paginate(5);底部添加</table>