如何在Javascript中使用路由

use*_*915 -6 javascript ajax laravel laravel-5

我想在javascript中使用route,但出现错误Route [product.like + productid] not defined.,有没有办法可以使用route呢?

阿贾克斯

 $.ajax({
        method: 'post',
        url: '{{ route('product.like'  productid) }}',
        data: {
            'user_id': userid,
            'product_id': productid,
        },
Run Code Online (Sandbox Code Playgroud)

路线

  Route::post('product/like/{id}', ['as' => 'product.like', 'uses' => 'LikeController@likeProduct']);
Run Code Online (Sandbox Code Playgroud)

IGP*_*IGP 6

您可以将路由帮助程序与字符串占位符一起使用,然后将占位符替换为javascript变量。

function AddFavourites(productid, userid) {
    let url = "{{ route('product.like', ['id' => ':id']) }}".replace(':id', productid);

    $.ajax({
        method: 'post',
        url: url,
        data: {
            'user_id': userid,
        },
    }).done(function(response, status){
        //
    }).fail(function(jqXHR, textStatus, errorThrown){
        //
    });
}
Run Code Online (Sandbox Code Playgroud)