2017-11-02 7 views
0

私はVue + Laravelを学ぶためのチュートリアルに従っていて、Vueコンポーネントのスクリプトでこれらの行のAjaxリクエストにAxiosを使用しています。悲しみは、コンソールログ上にある私の原因となるエラーがある:Rootディレクトリを設定するにはどうすればいいですか?Axios + Vueコンポーネント+ Laravel

POST http://localhost/favorite/2 404 (Not Found) 

私のウェブサイトには、問題のように見える別のフォルダにWAMP上でローカルに住んでいます。私はルートディレクトリを取得するために、通常のlaravel "Url( '')ヘルパー関数を使用することはできませんので、私はjavascriptではなく、実際のサーバーにプッシュするのには適していないローカルホストサイトをハードコーディングします。!

mounted() { 
    this.axios = axios.create({ 
     baseURL: 'http://localhost', 
    }); 
} 

は、あなたも、ストアデータ属性のベースURI先に行くことができます:将来のおかげで

http://localhost/laravel/public/

 methods: { 
     favorite(post) { 
      axios.post('/favorite/'+post) 
       .then(response => this.isFavorited = true) 
       .catch(response => console.log(response.data)); 
     }, 

     unFavorite(post) { 
      axios.post('/unfavorite/'+post) 
       .then(response => this.isFavorited = false) 
       .catch(response => console.log(response.data)); 
     } 
    } 
+0

JSで定数を使用してAPIベースURLを設定すると、Axiosコールで定数を連結することができます。 1つの場所で変更するだけで済みます。 – Joe

答えて

0

は、部品が実装された新しいaxiosインスタンスを作成します。

data() { 
    baseUri: 'http://localhost', 
}, 

mounted() { 
    this.axios = axios.create({ 
     baseURL: this.baseUri, 
    }); 
} 

その後、this.axiosを使用することができます。参考までにthe docsを参照してください。

乾杯!

関連する問題