Vue 2 қолданушысына рөл тағайындау туралы шолу ```javascript export default { data() { return { user: { name: 'Ivan' } }; }, methods: { setRole(role) { this.user.role = role; } } } ```
Frontend
Playwright-пен E2E тестілеу туралы айтыңыз: тестілеу жүйесі қалай ұйымдастырылды, қалай іске қосылды, артқы жақпен қалай әрекеттестік жасадыңыз және тест деректерінің қайталануын қалай қамтамасыз еттіңіз?
Сандар массивінің медианасын есептейтін функция жазыңыз.
200 идентификатордан тұратын массив бар. Әрбіріне /api/users/:id сұрауын жасау керек. Сұрауларды бір уақытта N-ден көп жасамайтын және нәтижелерін кіріс массивінің тәртібімен қайтаратын функция жазыңыз.
Nuxt 2 құрылғы анықтау миксинінің шолу ```javascript export default { data() { return { isMobile: window.innerWidth < 768 } } } ```
Playwright-пен жұмыс істегенде қандай қызықты жағдайлар немесе стандарттан тыс жағдайлар кездестірдіңіз?
Жүктемені азайту үшін Nuxt қосымшасында беттерді/жауаптарды қалай кэштеуге болады? Redis немесе Nitro кэштеу жұмыстарын жасадыңыз ба?
SSR (Nuxt) кезінде ұзақ ақ экранның себептері қандай болуы мүмкін? First Byte уақытының жоғарылау мәселесін қалай диагностикалау және шешу керек?
Vue 2-ден Vue 3-ке өту туралы айтыңыз: не өзгерді (VueX-тан Pinia-ға, Options API-дан Composition API-ға, Vue.extend-тан defineComponent-ке, new Vue-тан createApp-ке және т.б.)?
Nuxt-те беттердің өнімділігін оңтайландыру туралы айтыңыз: қандай қиындықтарға тап болдыңыз, қандай мәселелерді шештіңіз және қалай жасадыңыз?
async function loadUsers(ids) { const users = [] ids.forEach(async id => { const res = await fetch(`/api/users/${id}`) const user = await res.json() users.push(user) }) return users } Identify the problem with this code and suggest how to fix it.
Vue 2-ден Vue 3-ке көшу кезінде жинақтау құралы туралы айтыңыз: ол Webpack (Vue CLI) болды, қазір Vite. Қызықты бұрыштық жағдайлар, конфигурациялық қақтығыстар немесе қайта жазуға тура келген нәрселер болды ма?
function debounce(fn, delay) { let timer return function (...args) { clearTimeout(timer) timer = setTimeout(() => fn(args), delay) } }
Nuxt миксинін қарау 2 - өзгеріс тыңдағыш ```javascript export default { data() { return { width: 0 } }, mounted() { window.addEventListener('resize', this.onResize) this.onResize() }, methods: { onResize() { this.width = window.innerWidth } } } ```