Last major update: 20.04.2020
- Что такое авторизация/аутентификация
- Где хранить токены
- Как ставить куки ?
- Процесс логина
- Процесс рефреш токенов
- Кража токенов/Механизм контроля токенов
| window.addEventListener('resize', () => { | |
| if (window.innerWidth > 767) { | |
| console.log('Desktop'); | |
| } else { | |
| console.log('mobile'); | |
| } | |
| }); |
| <template> | |
| <div class="v-select"> | |
| <p | |
| class="title" | |
| @click="areOptionsVisible = !areOptionsVisible" | |
| >{{selected}}</p> | |
| <div class="options" | |
| v-if="areOptionsVisible" | |
| > | |
| <p |
| <img class="v-cart-item__image" | |
| :src="require(`../assets/img/${cart_item_data.image}`)" | |
| alt=""> |
| <script> | |
| export default { | |
| computed: { | |
| ...mapState(['currentUserChat']), | |
| isCoreRoute() { | |
| return this.$route.path === '/'; | |
| }, | |
| }, | |
| methods: { | |
| goBack() { |
| <template> | |
| <!-- 1 вариант --> | |
| <div class="user__status" | |
| :class="{ 'online': contact_data.status === 'online', | |
| 'offline': contact_data.status === 'offline' }" | |
| ></div> | |
| </template> | |
| <script> | |
| export default { |
| <template> | |
| <div class=""></div> | |
| </template> | |
| <script> | |
| export default { | |
| name: '', | |
| props: {}, | |
| data() { | |
| return {} |
| export default { | |
| state: {}, | |
| mutations: {}, | |
| actions: {}, | |
| getters: {}, | |
| }; |
| /** | |
| * Сброс стилей у кнопки. | |
| * Придётся немного поработать, чтобы получить нейтральный вид. | |
| */ | |
| button { | |
| padding: 0; | |
| border: none; | |
| font: inherit; | |
| color: inherit; | |
| background-color: transparent; |