Luego de tener instalado VueJS en este caso con webpack se agrega el componente:
//CargaFoto.vue
{{ msg }}
En el archivo donde se recoge los datos quedo asi el controlador:
//src/UsuarioController.php
/**
* @return JsonResponse
* @Route("/jsonimagen", name="jsonimagen", methods="POST")
*/
public function jsonimagen(Request $request):JsonResponse
{
$usuario = $this->getUser();
$data = $request->files->get('file');
$fileName = $usuario.'.'.$data->guessExtension();
// moves the file to the directory where usuarios are stored
$data->move(
$this->getParameter('usuarios_directorio'),
$fileName
);
echo $data; exit;
return $this->json($data);
}
Tambien configure la ruta donde se va a cargar las imagenes en el archivo
//services.yaml
parameters:
locale: 'en'
usuarios_directorio: '%kernel.project_dir%/public/uploads/usuarios'
Acá se puede ver la imagen cargada en esta captura.