add eslint working conf

This commit is contained in:
2020-04-29 21:05:38 +02:00
parent ffe8c167cb
commit ebb1c58f90
33 changed files with 866 additions and 846 deletions

View File

@@ -6,26 +6,22 @@
},
"extends": [
"eslint:recommended",
"plugin:vue/essential",
"plugin:vue/base",
"plugin:vue/strongly-recommended",
"plugin:vue/recommended"
"plugin:vue/essential"
],
"globals": {
"Atomics": "readonly",
"SharedArrayBuffer": "readonly"
},
"parserOptions": {
"ecmaVersion": 2018,
"sourceType": "module"
"ecmaVersion": 2018
},
"plugins": [
"vue"
],
"rules": {
"indent": [
"off",
2
"error",
4
],
"linebreak-style": [
"error",
@@ -36,10 +32,8 @@
"single"
],
"semi": [
"off",
"always"
],
"no-console": "off",
"strict": "off"
"error",
"never"
]
}
}

View File

@@ -8,14 +8,20 @@
"hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
"prod": "npm run production",
"production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"eslint": "./node_modules/.bin/eslint resources/assets/js/ test/ --ext .js,.vue"
"eslint": "./node_modules/.bin/eslint resources/js/ --ext .js,.vue",
"lint": "eslint --ext .js,.vue resources/js/"
},
"devDependencies": {
"axios": "^0.19",
"babel-eslint": "^10.1.0",
"cross-env": "^7.0",
"eslint": "^6.8.0",
"eslint-config-standard": "^14.1.1",
"eslint-loader": "^3.0.3",
"eslint-plugin-import": "^2.20.2",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^4.2.1",
"eslint-plugin-standard": "^4.0.1",
"eslint-plugin-vue": "^6.2.2",
"laravel-mix": "^5.0.1",
"laravel-mix-eslint": "^0.1.3",

9
resources/js/app.js vendored
View File

@@ -2,12 +2,13 @@ import Vue from 'vue'
import router from './router'
import App from './components/App'
import store from './store'
import SvgVue from 'svg-vue';
import SvgVue from 'svg-vue'
Vue.use(SvgVue);
Vue.use(SvgVue)
require('./bootstrap');
require('./bootstrap')
// eslint-disable-next-line no-unused-vars
const app = new Vue({
el: '#app',
@@ -15,4 +16,4 @@ const app = new Vue({
App
},
router, store,
});
})

View File

@@ -1,7 +1,5 @@
window._ = require('lodash');
window.axios = require('axios');
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
window._ = require('lodash')
window.axios = require('axios')
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest'

View File

@@ -8,8 +8,8 @@
</template>
<script>
export default {
name: "AlertBox",
export default {
name: 'AlertBox',
props: {
type: {
type: String,
@@ -22,5 +22,5 @@
default: 'message',
},
}
}
}
</script>

View File

@@ -11,12 +11,12 @@
</template>
<script>
import Nav from "./Nav";
import TopBar from "./TopBar";
import { mapGetters } from 'vuex'
import Nav from './Nav'
import TopBar from './TopBar'
import { mapGetters } from 'vuex'
export default {
name: "App",
export default {
name: 'App',
components : {
Nav, TopBar
},
@@ -32,9 +32,10 @@
})
},
watch: {
// eslint-disable-next-line no-unused-vars
$route(to, from) {
this.$store.dispatch('setPageTitle', to.meta.title)
}
}
}
}
</script>

View File

@@ -7,8 +7,8 @@
</template>
<script>
export default {
name: "Avatar",
export default {
name: 'Avatar',
props: ['avatar', 'alt', 'size']
}
}
</script>

View File

@@ -8,8 +8,8 @@
<script>
export default {
name: "InputField",
export default {
name: 'InputField',
props: {
name: {
type: String,
@@ -41,7 +41,7 @@
},
methods: {
updateField: function () {
this.clearErrors(this.name);
this.clearErrors(this.name)
this.$emit('update:field', this.value)
},
errorMessage: function () {
@@ -65,5 +65,5 @@
this.value = val
}
}
}
}
</script>

View File

@@ -5,8 +5,8 @@
</template>
<script>
export default {
name: "Loader",
export default {
name: 'Loader',
data: function () {
return {
loading: false,
@@ -15,5 +15,5 @@
mounted() {
setTimeout(() => this.loading = true, 250)
}
}
}
</script>

View File

@@ -25,8 +25,8 @@
</template>
<script>
export default {
name: "Nav",
export default {
name: 'Nav',
data: function () {
return {
toggleNav: true,
@@ -37,10 +37,10 @@
(isTrueSet) ? this.toggleNav = true : this.toggleNav = false
},
methods: {
toggleNavBar() {
toggleNavBar(){
this.toggleNav = !this.toggleNav
localStorage.setItem('navbar', JSON.stringify(this.toggleNav));
}
localStorage.setItem('navbar', JSON.stringify(this.toggleNav))
}
}
}
</script>

View File

@@ -1,14 +1,21 @@
<template>
<div class="relative mb-2">
<label v-if="label" :for="name" class="pb-1">{{ label }}</label>
<textarea :id="name" type="text" v-model="value" :placeholder="placeholder" @input="updateField()" :class="errorClassObject()" class="w-full h-64 rounded p-2">{{ data }}</textarea>
<textarea :id="name"
type="text"
v-model="value"
:placeholder="placeholder"
@input="updateField()"
:class="errorClassObject()"
class="w-full h-64 rounded p-2">
</textarea>
<p class="text-red-600 m-0" v-text="errorMessage()">Error Here</p>
</div>
</template>
<script>
export default {
name: "TextAreaField",
export default {
name: 'TextAreaField',
props: {
name: {
type: String,
@@ -39,7 +46,7 @@
},
methods: {
updateField: function () {
this.clearErrors(this.name);
this.clearErrors(this.name)
this.$emit('update:field', this.value)
},
errorMessage: function () {
@@ -63,5 +70,5 @@
this.value = val
}
}
}
}
</script>

View File

@@ -20,11 +20,11 @@
</template>
<script>
import { mapGetters } from 'vuex'
import Avatar from "./Avatar";
import { mapGetters } from 'vuex'
import Avatar from './Avatar'
export default {
name: "TopBar",
export default {
name: 'TopBar',
components: {
Avatar
},
@@ -38,5 +38,5 @@
authUser: 'authUser',
})
}
}
}
</script>

View File

@@ -8,11 +8,11 @@
</template>
<script>
import Dropzone from 'dropzone'
import { mapGetters } from 'vuex'
import Dropzone from 'dropzone'
import { mapGetters } from 'vuex'
export default {
name: "UploadableImage",
export default {
name: 'UploadableImage',
props: {
imageWidth: {
type: Number,
@@ -83,5 +83,5 @@
return this.dropImage || this.image
}
}
}
}
</script>

View File

@@ -1,18 +1,18 @@
import Vue from 'vue'
import VueRouter from 'vue-router'
import Home from "./views/Home"
import Profile from "./views/User/ProfileUser";
import ShowUser from "./views/User/ShowUser";
import DashBoard from "./views/DashBoard";
import CssTesteur from "./views/CssTesteur";
import MemoIndex from "./views/Memo/MemoIndex";
import MemoCreate from "./views/Memo/MemoCreate";
import MemoShow from "./views/Memo/MemoShow";
import MemoEdit from "./views/Memo/MemoEdit";
import ToDoListIndex from "./views/ToDoLists/ToDoListIndex";
import ToDoListShow from "./views/ToDoLists/ToDoListShow";
import GameIndex from "./views/Games/GameIndex";
import Hangman from "./views/Games/HangMan/Hangman";
import Home from './views/Home'
import Profile from './views/User/ProfileUser'
import ShowUser from './views/User/ShowUser'
import DashBoard from './views/DashBoard'
import CssTesteur from './views/CssTesteur'
import MemoIndex from './views/Memo/MemoIndex'
import MemoCreate from './views/Memo/MemoCreate'
import MemoShow from './views/Memo/MemoShow'
import MemoEdit from './views/Memo/MemoEdit'
import ToDoListIndex from './views/ToDoLists/ToDoListIndex'
import ToDoListShow from './views/ToDoLists/ToDoListShow'
import GameIndex from './views/Games/GameIndex'
import Hangman from './views/Games/HangMan/Hangman'
Vue.use(VueRouter)

View File

@@ -10,13 +10,15 @@ const getters = {
}
const actions = {
// eslint-disable-next-line no-unused-vars
fetchAuthUser({commit, state}) {
// eslint-disable-next-line no-undef
axios.get('/api/auth-user')
.then(res => {
commit('setAuthUser', res.data)
})
.catch(error => {
console.log('Unable to fetch auth user')
console.log('Unable to fetch auth user' + error)
})
}
}

View File

@@ -37,7 +37,7 @@
</template>
<script>
export default {
name: "CssTesteur"
}
export default {
name: 'CssTesteur'
}
</script>

View File

@@ -11,24 +11,26 @@
</template>
<script>
import UserAdmin from "./User/UserAdmin";
import UserAdmin from './User/UserAdmin'
export default {
name: "DashBoard",
export default {
name: 'DashBoard',
components: {
UserAdmin
},
methods: {
logout: function () {
// eslint-disable-next-line no-undef
axios.post('logout')
.then(res => {
if(res.status ===302 || 401) {
// eslint-disable-next-line no-constant-condition
if(res.status === 302 || 401) {
window.location.href = '/login'
}
}).catch(error => {
}).catch(() => {
})
}
}
}
}
</script>

View File

@@ -8,12 +8,12 @@
</template>
<script>
import HangmanIndex from "./HangMan/HangmanIndex";
import HangmanIndex from './HangMan/HangmanIndex'
export default {
name: "GameIndex",
export default {
name: 'GameIndex',
components: {
HangmanIndex
}
}
}
</script>

View File

@@ -3,7 +3,7 @@
<h1 class="text-3xl text-center text-orange-900 font-bold">Pendu</h1>
<p class="text-center mb-4">Trouve le mot du pendu - Saisi les lettres</p>
<div class="flex justify-center dic-select">
<div v-for="(dic, key) in dictionary">
<div v-for="(dic, key) in dictionary" :key="key">
<a v-if="!selectedWord" class="btn-primary mr-1" @click="selectWord">{{ key }}</a>
</div>
</div>
@@ -46,10 +46,10 @@
</template>
<script>
import json from './dict.json'
import json from './dict.json'
export default {
name: "Hangman",
export default {
name: 'Hangman',
data: function () {
return {
dictionary: json,
@@ -89,7 +89,7 @@
}
} else {
if(!this.wrongLetters.includes(letter)) {
this.wrongLetters.push(letter);
this.wrongLetters.push(letter)
this.updateWrongLettersEl()
} else {
@@ -104,15 +104,15 @@
.split('')
.map(
letter => {
let toggleLetter = this.correctLetters.includes(letter) ? letter : '';
return '<span class="letter">' + toggleLetter +"</span>"
let toggleLetter = this.correctLetters.includes(letter) ? letter : ''
return '<span class="letter">' + toggleLetter + '</span>'
}
).join('');
).join('')
const innerWord = this.wordEl.replace(/<span class="letter">|<\/span>/g, '');
const innerWord = this.wordEl.replace(/<span class="letter">|<\/span>/g, '')
if(innerWord === this.selectedWord) {
this.finalMessage = 'Gagné! 😃';
this.finalMessage = 'Gagné! 😃'
this.popup = true
this.newGame()
}
@@ -121,30 +121,30 @@
this.wrongLettersEl =
!this.wrongLetters ? '<p>Wrong</p>' : ''
+
this.wrongLetters.map(letter => `<span>${letter}</span>`);
this.wrongLetters.map(letter => `<span>${letter}</span>`)
// Display parts
this.figureParts.forEach((part, index) => {
const errors = this.wrongLetters.length;
const errors = this.wrongLetters.length
if(index < errors) {
part.style.display = 'block'
} else {
part.style.display = 'none'
}
});
})
// Check if lost
if(this.wrongLetters.length === this.figureParts.length) {
this.finalMessage = 'Perdu. 😕';
this.finalMessage = 'Perdu. 😕'
this.popup = true
this.newGame()
}
},
newGame: function () {
this.popup = true
this.correctLetters.splice(0);
this.wrongLetters.splice(0);
this.correctLetters.splice(0)
this.wrongLetters.splice(0)
this.letterBox = ''
this.selectedWord = ''
this.wrongLettersEl = ''
@@ -157,5 +157,5 @@
}, 2000)
}
}
}
}
</script>

View File

@@ -6,13 +6,13 @@
</template>
<script>
export default {
name: "HangmanIndex",
export default {
name: 'HangmanIndex',
props: {
link: {
type: String,
required: true
},
}
}
}
</script>

View File

@@ -6,12 +6,12 @@
</template>
<script>
import OpenWeatherCard from "./Meteo/OpenWeatherCard";
import OpenWeatherCard from './Meteo/OpenWeatherCard'
export default {
name: "Home",
export default {
name: 'Home',
components: {
OpenWeatherCard
}
}
}
</script>

View File

@@ -1,7 +1,7 @@
<template>
<div class="p-4">
<div class="flex justify-between flex-center mb-4">
<router-link to="/memos/" class="btn">< Back</router-link>
<router-link to="/memos/" class="btn">Back</router-link>
<button @click="$router.back()" class="btn-alert">Cancel</button>
</div>
<form @submit.prevent="submitForm">
@@ -16,11 +16,11 @@
</template>
<script>
import InputField from "../../components/InputField";
import TextAreaField from "../../components/TextAreaField";
import InputField from '../../components/InputField'
import TextAreaField from '../../components/TextAreaField'
export default {
name: "MemoCreate",
export default {
name: 'MemoCreate',
components: {
InputField, TextAreaField
},
@@ -35,6 +35,7 @@
},
methods: {
submitForm: function () {
// eslint-disable-next-line no-undef
axios.post('/api/memos', this.form)
.then(response => {
this.$router.push(response.data.links.self)
@@ -44,5 +45,5 @@
})
}
}
}
}
</script>

View File

@@ -15,7 +15,7 @@
</div>
<div class="p-4">
<div class="flex justify-between mb-4">
<router-link :to="'/memos/' + this.$route.params.id" class="btn">< Back</router-link>
<router-link :to="'/memos/' + this.$route.params.id" class="btn">Back</router-link>
</div>
<form @submit.prevent="submitForm">
<InputField name="name" :data="form.name" label="Title" placeholder="Your Title" required @update:field="form.name = $event" :errors="errors" />
@@ -31,12 +31,12 @@
</template>
<script>
import InputField from "../../components/InputField";
import TextAreaField from "../../components/TextAreaField";
import UploadableImage from "../../components/UploadableImage";
import InputField from '../../components/InputField'
import TextAreaField from '../../components/TextAreaField'
import UploadableImage from '../../components/UploadableImage'
export default {
name: "MemoEdit",
export default {
name: 'MemoEdit',
components: {
InputField, TextAreaField, UploadableImage
},
@@ -53,6 +53,7 @@
},
methods: {
submitForm: function () {
// eslint-disable-next-line no-undef
axios.patch('/api/memos/' + this.$route.params.id, this.form)
.then(response => {
this.$router.push(response.data.links.self)
@@ -63,6 +64,7 @@
}
},
mounted() {
// eslint-disable-next-line no-undef
axios.get('/api/memos/' + this.$route.params.id)
.then(response => {
this.form = response.data.data
@@ -75,5 +77,5 @@
}
})
}
}
}
</script>

View File

@@ -1,7 +1,7 @@
<template>
<div class="p-4">
<div class="flex justify-between flex-center mb-4">
<a href="#" class="btn" @click="$router.back()">< Back</a>
<a href="#" class="btn" @click="$router.back()">Back</a>
<router-link :to="'/memos/create'" class="btn-primary">Add New Memo</router-link>
</div>
<Loader v-if="loading" />
@@ -25,10 +25,10 @@
</template>
<script>
import Loader from "../../components/Loader";
import Loader from '../../components/Loader'
export default {
name: "MemoIndex",
export default {
name: 'MemoIndex',
components: {
Loader
},
@@ -39,15 +39,16 @@
}
},
mounted() {
// eslint-disable-next-line no-undef
axios.get('/api/memos')
.then(response => {
this.memos = response.data.data
this.loading = false
})
.catch(error => {
.catch(() => {
this.loading = false
console.log('Unable to fetch memos.')
})
}
}
}
</script>

View File

@@ -18,7 +18,7 @@
/>
<div class="absolute flex flex-col justify-between w-full top-0 bottom-0">
<div class="flex items-center justify-between p-4">
<router-link to="/memos/" class="btn-secondary">< Back</router-link>
<router-link to="/memos/" class="btn-secondary">Back</router-link>
<div class="flex-middle">
<router-link :to="'/memos/' + memo.memo_id + '/edit'" class="btn-secondary mr-1" >Edit</router-link>
<a href="#" class="btn-alert" @click="modal = ! modal">Delete</a>
@@ -38,13 +38,13 @@
</template>
<script>
// import TagBox from "../Tag/TagBox";
import Loader from "../../components/Loader";
let MarkdownIt = require('markdown-it'),
// import TagBox from "../Tag/TagBox";
import Loader from '../../components/Loader'
let MarkdownIt = require('markdown-it'),
md = new MarkdownIt()
.use(require('markdown-it-checkbox'));
.use(require('markdown-it-checkbox'))
export default {
export default {
name: 'MemoShow',
components: {
Loader
@@ -63,6 +63,7 @@
}
},
mounted() {
// eslint-disable-next-line no-undef
axios.get('/api/memos/' + this.$route.params.id)
.then(response => {
this.memo = response.data.data
@@ -77,8 +78,9 @@
},
methods: {
destroy: function () {
// eslint-disable-next-line no-undef
axios.delete('/api/memos/' + this.$route.params.id)
.then(response => {
.then(() => {
this.$router.push('/memos')
})
.catch(errorRes => {
@@ -86,5 +88,5 @@
})
}
}
}
}
</script>

View File

@@ -22,8 +22,8 @@
</template>
<script>
export default {
name: "OpenWeatherCard",
export default {
name: 'OpenWeatherCard',
data: function () {
return {
loading: true,
@@ -34,7 +34,7 @@
dateFormat(date) {
const d = new Date(date)
const dtf = new Intl.DateTimeFormat('fr', { year: '2-digit', month: 'short', day: '2-digit', hour: 'numeric' })
const [{ value: mo },,{ value: da },,{ value: ye },,{value: ho }] = dtf.formatToParts(d)
const [{ value: mo },,{ value: da },,{value: ho }] = dtf.formatToParts(d)
return `${mo}/${da} - ${ho}h`
}
},
@@ -54,18 +54,18 @@
}
if (refreshMeteo) {
console.log("refreshing meteo data")
// eslint-disable-next-line no-undef
axios.get('/api/meteo')
.then(response => {
this.meteo = response.data
this.loading = false
localStorage.setItem('meteo', JSON.stringify(response.data));
localStorage.setItem('meteo', JSON.stringify(response.data))
})
.catch(error => {
.catch(() => {
console.log('Unable to fetch meteo.')
})
}
},
}
}
</script>

View File

@@ -14,8 +14,8 @@
</template>
<script>
export default {
name: "ToDo",
export default {
name: 'ToDo',
data: function () {
return {
name: this.toDo.data.attributes.data.name,
@@ -37,7 +37,7 @@
mounted() {
console.log(this.$key)
}
}
}
</script>
<style scoped>

View File

@@ -9,7 +9,7 @@
</div>
<ToDo v-else
v-for="(toDo, indexToDo) in toDoList.data.attributes.data.to_dos.data"
key="indexToDo"
:key="indexToDo"
:toDo="toDo"
:position="indexToDo" />
</ul>
@@ -23,11 +23,11 @@
</template>
<script>
import InputField from "../../components/InputField";
import ToDo from "./ToDo";
import InputField from '../../components/InputField'
import ToDo from './ToDo'
export default {
name: "ToDoList",
export default {
name: 'ToDoList',
components: {
InputField, ToDo
},
@@ -51,6 +51,7 @@
},
methods: {
addToDo: function () {
// eslint-disable-next-line no-undef
axios.post('/api/to-do-lists/' + this.toDoList.data.to_do_list_id + '/to-do', {name: this.name})
.then(res => {
this.toDoList.data.attributes.data.to_dos.data.push(res.data)
@@ -61,8 +62,9 @@
})
},
deleteToDo: function (toDo, position) {
// eslint-disable-next-line no-undef
axios.delete('/api/to-do-lists/' + this.toDoList.data.to_do_list_id + '/to-do/' + toDo.data.to_do_id)
.then(res => {
.then(() => {
this.toDoList.data.attributes.data.to_dos.data.splice(position, 1)
})
.catch(errorRes => {
@@ -70,7 +72,7 @@
})
}
}
}
}
</script>

View File

@@ -10,7 +10,7 @@
</div>
</div>
<div class="flex-between flex-center mb-1">
<a href="#" class="btn" @click="$router.back()">< Back</a>
<a href="#" class="btn" @click="$router.back()">Back</a>
<a href="#" class="btn-primary" @click="modal = ! modal">Add New List</a>
</div>
@@ -27,12 +27,12 @@
</template>
<script>
import Loader from "../../components/Loader";
import InputField from "../../components/InputField";
import ToDoList from "./ToDoList";
import Loader from '../../components/Loader'
import InputField from '../../components/InputField'
import ToDoList from './ToDoList'
export default {
name: "ToDoListIndex",
export default {
name: 'ToDoListIndex',
components: {
Loader, InputField, ToDoList
},
@@ -46,6 +46,7 @@
}
},
mounted() {
// eslint-disable-next-line no-undef
axios.get('/api/to-do-lists')
.then(res => {
this.toDoLists = res.data.data
@@ -60,6 +61,7 @@
},
methods: {
create: function () {
// eslint-disable-next-line no-undef
axios.post('/api/to-do-lists', {name: this.name})
.then(res => {
console.log(res)
@@ -72,5 +74,5 @@
})
}
}
}
}
</script>

View File

@@ -1,9 +1,9 @@
<template>
<div></div>
</template>
<script>
export default {
name: "ToDoListShow"
}
export default {
name: 'ToDoListShow'
}
</script>

View File

@@ -29,10 +29,10 @@
</template>
<script>
import { mapGetters } from 'vuex'
import UploadableImage from "../../components/UploadableImage";
import { mapGetters } from 'vuex'
import UploadableImage from '../../components/UploadableImage'
export default {
export default {
name: 'Profil',
components: {
UploadableImage
@@ -42,5 +42,5 @@
authUser: 'authUser',
})
},
}
}
</script>

View File

@@ -11,13 +11,9 @@
</template>
<script>
import UploadableImage from "../../components/UploadableImage";
export default {
export default {
name: 'Profile',
components: {
UploadableImage
},
data: function () {
return {
loading: true,
@@ -25,7 +21,8 @@
}
},
mounted() {
axios.get('/api/users/' + this.$route.params.id)
// eslint-disable-next-line no-undef
axios.get('/api/users/' + this.$route.params.id) // eslint-disable-line no-undef-init
.then(response => {
this.user = response.data.data
this.loading = false
@@ -37,5 +34,5 @@
}
})
},
}
}
</script>

View File

@@ -36,7 +36,7 @@
<transition name="fade">
<ul v-if="userListToggle" class="box-toggle-content">
<Loader v-if="loading" />
<li v-else v-for="user in users">
<li v-else v-for="(user, index) in users" :key="index">
<router-link :to="'/users/' + user.data.user_id">{{ user.data.attributes.name }}</router-link> - {{ user.data.attributes.email }} - {{ user.data.attributes.last_login }} | {{ user.data.attributes.is_admin }}
</li>
</ul>
@@ -48,13 +48,13 @@
</template>
<script>
import {mapGetters} from 'vuex';
import Avatar from '../../components/Avatar';
import AlertBox from '../../components/AlertBox';
import InputField from '../../components/InputField';
import Loader from "../../components/Loader";
import {mapGetters} from 'vuex'
import Avatar from '../../components/Avatar'
import AlertBox from '../../components/AlertBox'
import InputField from '../../components/InputField'
import Loader from '../../components/Loader'
export default {
export default {
name: 'UserAdmin',
components: {
Avatar, AlertBox, InputField, Loader
@@ -80,6 +80,7 @@
})
},
mounted() {
// eslint-disable-next-line no-undef
axios.get('/api/users')
.then(response => {
this.users = response.data.data
@@ -87,11 +88,12 @@
})
.catch(error => {
this.loading = false
console.log('Unable to fetch users.')
console.log('Unable to fetch users.' + error)
})
},
methods: {
addMember: function () {
// eslint-disable-next-line no-undef
axios.post('/api/users', {name: this.form.name, email: this.form.email})
.then(res => {
this.form.name = ''
@@ -104,5 +106,5 @@
})
}
}
}
}
</script>