如何在 vue 上使用 get 方法将数据发送到路由.js 2.



我的ajax是这样的:

<script>
    new Vue({
        ...
        methods: {
            fetchItems: function (page) {
                var data = {page: page};
                this.$http.get('api/items', data).then(function (response) {
                    console.log(JSON.stringify(response))
                    this.$set(this, 'items', response.data.data.data);
                    this.$set(this, 'pagination', response.data.pagination);
                }, function (error) {
                    // handle error
                });
            },
            ...
        }
    });
</script>

我的路线是这样的:

Route::get('/api/items/', function () {
    dd(Input::get('page'));
    $results =  AppPost::latest()->paginate(7);
    $response = [
        'pagination' => [
            'total' => $results->total(),
            'per_page' => $results->perPage(),
            'current_page' => $results->currentPage(),
            'last_page' => $results->lastPage(),
            'from' => $results->firstItem(),
            'to' => $results->lastItem()
        ],
        'data' => $results
    ];
    return $response;
});

执行时,我在控制台上检查,结果 = null,而我把这个:dd(Input::get('page'));

它是否应该显示发送的页面

我该如何解决?

尝试更改该行:

dd(Input::get('page'));

自:

return Input::get('page');

dd方法将转储var值并停止执行。因此,输出不会是格式正确的 json。它可能是一些原始的html破坏了你转储的值。

这是 vue js 代码的完整示例

var app = new Vue({
    el: '#invoice',
    data: {
        form: new FormData(),
        errors: {},
        tax: 0
    },
    methods: {
    random: function () {
      this.form.serial = Math.floor(Math.random() * 1000000) + 1;
    },
    sortBy: function() {
        if(this.form.tax_id) {
          var url = '{{route('invoice.get_tax', null)}}';
          this.$http.get(url)
           .then(function(response){
              if(response.data) {
                  console.log(response.data)
              }
           });
        }
     }
 })

有路线

Route::get('/get_tax/{tax_id}', function($tax_id)
{
    $tax = AppTax::findOrFail($tax_id);
    if ($tax) {
        return response()
            ->json([
                'rate' => $tax->rate,
                'type' => $tax->type
            ], 200);
    } else {
        return response()
            ->json([
                'rate' => 0,
                'type' => 1
            ], 200);
    }
})->name('invoice.get_tax');

相关内容

  • 没有找到相关文章

最新更新