npm install axios
コマンドを使用してaxiosをインストールしました。これは私のpackage.json
依存関係です
"dependencies": {
"axios": "^0.18.0",
"bootstrap-vue": "^2.0.0-rc.11",
"vue": "^2.5.2",
"vue-router": "^3.0.1"
},
main.js
ファイルにaxiosを登録しました。
import Vue from 'vue'
import VueRouter from 'vue-router'
import BootstrapVue from 'bootstrap-vue'
import axios from 'axios'
import App from './App'
import routerList from './routes'
Vue.use(axios)
Vue.use(BootstrapVue)
Vue.use(VueRouter)
コンポーネントの1つでaxiosを使用しようとすると、次のエラーが表示されます。
Uncaught ReferenceError: axios is not defined
これを修正する方法は?
Vue.use
は、プラグインを追加することを意味します。ただし、axios
はVue
のプラグインではないため、use
を介してグローバルに追加することはできません。
私が推奨するのは、axios
を必要なときにだけインポートすることです。しかし、本当にグローバルにアクセスする必要がある場合は、プロトタイプに追加することができます。
Vue.prototype.$axios = axios
その後、this.$axios
を使用してvueのaxios
にアクセスできます
また、vue-axios
をインストールし、main.js
にインポートします
import VueAxios from 'vue-axios'
次にmain.js
で:
Vue.use(VueAxios, axios)
今、私があなたの方法を間違えていなければ、例えばあなたが使うことができます:
let uri = 'http://localhost:4000/tickets/add';
this.axios.post(uri, this.ticket).then((response) => {
console.log(response);
});
import Vue from 'vue'
import axios from 'axios'
Vue.prototype.$http = axios;
コンポーネント内で、次のようなaxiosの使用を開始できます。
{
methods: {
someMethod() {
this.$http.get('/users').then(() => {
// do something
})
}
}
}
次のコマンドを使用してnpmをインストールします
npm install axios --save
上記のコマンドインポートを以下のように実行した後:
import axios from 'axios'
このコードを試してください:
import axios from 'axios'
Vue.use(axios)
myprojectに挿入すると、laravel project window.axios = require('axios');
で見つかりました。それはすべて大丈夫です!