@MaxEpt

Как правильно работать с BX.ajax.runAction?

Пытаюсь использовать контроллеры битрикса для ajax запроса к своему модулю через BX.ajax.runAction.

В корне модуля лежит .settings.php со следующим содержимым:

<?
return [
    'controllers' => [
        'value' => [
            'namespaces' => [
                '\\Petrov\\Main\\Controller' => 'mapi',
            ],
        ],
        'readonly' => true,
    ],
];


Сам модуль в папке local, название petrov.main, внутри папка lib -> controller -> BasketActions.php, его код
<?
namespace Petrov\Main\Controller;

use Bitrix\Main\Engine\Controller;

class BasketActions extends Controller
{
    public function configureActions()
    {
        return [
            'getAnalogs' => [
                'prefilters' => []
            ]
        ];
    }

    /**
     * @param $arXmlId
     * @return array
     */
    public function getAnalogsAction($arXmlId)
    {
           return [];       
    }
}


Вызов из js следующим образом:
BX.ajax.runAction('petrov:main.mpi.BasketActions.getAnalogs', {data:{}});


Проект развернут локально - все работает как нужно. Выложил на сервер - получаю ошибку
Could not find description of mapi.BasketActions.getAnalogsAction in Bitrix\\Main\\Engine\\DefaultController
  • Вопрос задан
  • 5738 просмотров
Решения вопроса 1
@MaxEpt Автор вопроса
Решение в комментах, проблема в была в именовании файла контроллера.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы