2016-11-20 9 views
1

なぜページにリダイレクトされないのですかvue-router 0.7.13 + SweetAlert?私はこのように行う(Laravel 5.3):ここで

article.blade.phpです:

... 
<a href="#" v-on:click.prevent="deleteArticle('/articles/{{ $article->id }}/delete')">Delete</a> 
... 

これは私のapp.js

{ 
    "private": true, 
    "scripts": { 
    "prod": "gulp --production", 
    "dev": "gulp watch" 
    }, 
    "devDependencies": { 
    "gulp": "^3.9.1", 
    "laravel-elixir": "^6.0.0-14", 
    "laravel-elixir-webpack-official": "^1.0.9", 
    "vue-resource": "^1.0.3" 
    }, 
    "dependencies": { 
    "sweetalert": "^1.1.3", 
    "vue": "^1.0.28", 
    "vue-router": "^0.7.13" 
    } 
} 

はエラーがあります:

window.Vue = require('vue'); 
window.VueRouter = require('vue-router'); 
Vue.use(VueRouter); 

var article_form = new Vue({ 
    el: '#article_form', 
    data: { 
    ... 
    }, 
    methods: { 
    ... 
    ... 
    deleteArticle: function (url) { // Click Delete button 
     var self = this; 
     swal({ 
     title: "Are you sure?", 
     text: "You will not be able to recover this imaginary file!", 
     type: "warning", 
     showCancelButton: true, 
     confirmButtonColor: "#DD6B55", 
     confirmButtonText: "Yes, delete it!", 
     closeOnConfirm: false 
     }, function() { // Click Yes button 
     self.$http.delete(url).then(function() { 
      swal({ 
      title: "Deleted!", 
      text: "Your imaginary file has been deleted.", 
      type: "success" 
      }, function() { // After click ОК must be redirect 
      self.$route.router.go('/articles'); 
      }); 
     }); 
     }); 
    } 
    } 
}); 

package.json (OS X Safariコンソールから):TypeError: undefined is not an object (evaluating 'self.$route.router')

私はこのようにもっと試しました:self.$router.go('/articles')、それは私に同じエラーを表示します。彼のためにどういうわけかとして$route(または$router

何が間違っていますか?

答えて

3

あなたが実際にプラグインをインストールするのを忘れ:

var VueRouter = require ('vue-router') 
Vue.use (VueRouter) 
+0

私はapp.jsにこれを追加しますが、同じエラーを見て... –

+0

@VikkyShostakこれは問題ではなく価値が気づかが解決しない場合があります 'go'が使用されていますあなたのケースで '$ router.push( '/ articles')'を使用して、前後にジャンプする 'go(1)'や 'go(-1)'のようにします。私はテストし、 'go( '/ articles')'何とかページをリロードします。 –

+0

@PanJunjie潘俊杰 'push'メソッドは、vue-router 0.7.13で動作しますか? –

関連する問題