0
先ずフィードバックに感謝の意を表します。 私はes6とvuejsに慣れていないので、アプリケーション全体でインポートされたサービスモジュールを使用する際に問題が発生し始めています。最終目標は、Axiosを使用するすべてのものを1つのBaseServiceに移動することです。インポートされたモジュールの機能を見つけることができません
[Vue warn]: Error in mounted hook: "TypeError: __WEBPACK_IMPORTED_MODULE_0__services_AuthService__.a.getCurrentUser is not a function"
AuthService.js
import BaseService from './BaseService'
export default class AuthService {
setCurretUser(user)
{
localStorage.setItem("currentUser", user);
}
getCurrentUser()
{
return localStorage.getItem("currenUser");
}
}
App.vue
import Axios from 'axios'
import Navbar from './partials/Navbar'
import Sidebar from './partials/Sidebar'
import AuthService from '../services/AuthService'
export default {
name: 'app',
components: {
Navbar,
Sidebar
},
mounted() {
console.log('Component mounted.')
},
created() {
Axios.get('api/user')
.then(function (response) {
AuthService.setCurrentUser(response.data);
console.log(response);
})
.catch(function (error) {
console.log(error);
});
}
}
あるいは例えば、名前の輸出として書き出します'export function setCurrentUser(user){...}'と 'import * as AuthService from'を実行します – loganfsmyth
もちろん、私はそれらを静的に呼びます。 .vueオブジェクトで使用するクラスをインスタンス化するきれいな方法は何でしょうか。 –