Note: when mutating (rather than replacing) an Object or an Array, the old value will be the same as new value because they reference the same Object/Array. Vue doesn’t keep a copy of the pre-mutate value.
<transition
v-on:before-enter="beforeEnter"
v-on:enter="enter"
v-on:after-enter="afterEnter"
v-on:enter-cancelled="enterCancelled"
v-on:before-leave="beforeLeave"
v-on:leave="leave"
v-on:after-leave="afterLeave"
v-on:leave-cancelled="leaveCancelled"
>
<!-- ... -->
</transition>
watch: {
toggle: function (val) {
if(val) {
this.$emit('open');
} else {
this.search = '';
}
}
},
<dropdown @open="fetchData1"></dropdown>
<dropdown @open="fetchData2"></dropdown>
<dropdown @open="fetchData3"></dropdown>
<element-select @visible-change="fetchData"></element-select>
methods: {
fetchData(isOpen) {
if (isOpen) {
fetch(url);
}
}
}
var app3 = new Vue({
el: '#app-3',
data() {
return {
seen: true
}
}
})
export function indexToFind () {...}
import { indexToFind } from 'utils.js';
import axios from 'axios';
Vue.prototype.$http = axios;
<menu @sizeValue="onSizeChange"></menu>
methods: {
onSizeChange(value) {
console.log(value);
}
}
<popover ref="popover">
<ul v-for="item in items">
<li @click="onClickOption(item)">Item 1</item>
...
</ul>
</popover>
methods: {
onClickOption(option) {
// какие то действия
this.$refs.popover.close();
}
}
// router.js
import store from './store';
router.beforeEach((to, from, next) => {
if (!store.getters.token) {
next({ path: '/login' });
} else {
next();
}
});
// store
const state = {
token: localStorage.getItem('token'),
};
const getters = {
token(state) {
return state.token;
},
};
const str = JSON.stringify(this.postBody);
axios.post('http://localhost:8081/', str)
.then((response) => {
console.log(response);
})
.catch((error) => {
console.log(error);
});