首页 > 解决方案 > ajax调用后如何更新对象,在构造函数中实例化?

问题描述

我只想知道是否可以在构造函数控制器中实例化一个对象(或服务)并使用不同的 ajax 调用更新这个对象。

首先,我的控制器中的注入工作正常,我已经尝试使用会话或 cookie 来做到这一点,但实际上 myObj 比增加一个数字更复杂,所以它似乎不是我需要的。

class MyController extends Controller
{

    private $myObj;

    public function __construct(MyObj $myObj)
    {

        $this->myObj = $myObj;
    }


    public function indexAction(Request $request)
    {

        $aData['pageTitle'] = 'exemple';
        $aData['pageSubtitle'] = 'on stackoverflow';

        return $this->render('Bundle:page.html.twig', $aData);

    }

    public function ajaxAction(Request $request){

        $this->myObj->increment_nbDomain();
        return new JsonResponse('ok');
    }

}

我的对象

class myObj
{
    public $nbDomain = 0;

    public function increment_nbDomain(){
        $this->nbDomain++;
    }

}

jQuery 函数

$('.buttonPlus').on('click', function () {
    $.ajax({
        url: '{{ path('route_to_ajaxAction') }}',
        type: "POST",
        dataType: "json",
        async: true,
        success: function (data) {
            console.log(data);
        },
        error: function (data) {
            console.log(data);
        }
    });
});

nbDomain 始终等于零

标签: phpajaxsymfony

解决方案


推荐阅读