рдУрдкрди рд╕реЛрд░реНрд╕ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдкрд░ рдкреЛрд░реНрдЯрд▓реНрд╕ рдХрд╛ рдлреНрд░рдВрдЯ рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ: рдЕрдиреБрднрд╡ рд╕рд╛рдЭрд╛ рдХрд░реЗрдВ

рд╣рдо рд░реВрд╕ рдореЗрдВ рд╕рдмрд╕реЗ рдмрдбрд╝реЗ рдирд┐рдпреЛрдХреНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреЛрд░реНрдЯрд▓ рд╕рдорд╛рдзрд╛рди рдХреИрд╕реЗ рдмрдирд╛рддреЗ рд╣реИрдВ рдкрд░ рд▓реЗрдЦ рдХреЗ рдкрд╣рд▓реЗ рднрд╛рдЧ рдореЗрдВ , рдмреИрдХрдПрдВрдб рджреНрд╡рд╛рд░рд╛ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╣рдо рдлреНрд░рдВрдЯрдПрдВрдб рдХреЛ рдкрд╛рд╕ рдХрд░реЗрдВрдЧреЗред



рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рднрд╛рдЧ рдореЗрдВ рдкрд╣рд▓реЗ рд╣реА рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИ, рд╣рдорд╛рд░рд╛ рдореБрдЦреНрдп рд▓рдХреНрд╖реНрдп рдПрдХ рдРрд╕рд╛ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рдерд╛ рдЬрд┐рд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдмрдврд╝рд╛рдпрд╛ рдФрд░ рдмрдирд╛рдП рд░рдЦрд╛ рдЬрд╛ рд╕рдХреЗред рдореЛрд░реНрдЪреЗ

рдХреА рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдпрддрд╛

рдЬреНрдпрд╛рджрд╛рддрд░ Vue.js рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рд╣реИ, рдФрд░ рдЪреВрдВрдХрд┐ рдкреВрд░реЗ рдкреЛрд░реНрдЯрд▓ рдХреЛ рдкреЛрд░реНрдЯрд▓реЗрдЯреНрд╕ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛ рдЕрдкрдирд╛ рдкрдХреНрд╖ (Vuex), рдорд╛рд░реНрдЧ (Vue Router) рдФрд░ рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓рдЧ Vue рдЙрджрд╛рд╣рд░рдг рд╣реИред рдРрд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рднрдВрдбрд╛рд░ рдореЗрдВ рд▓реЗ рдЬрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЪреВрдВрдХрд┐ рдкреЛрд░реНрдЯрд▓реЗрдЯ рдЕрдкрдиреА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рд╡рд╛рд▓ рдпрд╣ рдЙрдарддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рднрд┐рдиреНрди рдкреЛрд░реНрдЯреНрд▓реЗрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдмрд╣реБрдд рд╕рд╛рд░рд╛ рдХреЛрдб рдХреИрд╕реЗ рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рдПред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЙрди рд╕рднреА рдЪреАрдЬреЛрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдПрдХ рдЕрд▓рдЧ рднрдВрдбрд╛рд░ рдореЗрдВ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ .gitmodules рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред рдлрд┐рд▓рд╣рд╛рд▓ рдЗрд╕ рддрд░рд╣ рдХреЗ рджреЛ рд╕рдмрдореЙрдбрд▓реНрд╕ рд╣реИрдВред

рдПрдХ рдЖрдо рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ: рдпреЗ рд╕рд╛рдорд╛рдиреНрдп рдШрдЯрдХ, рд╕реЗрд╡рд╛рдПрдВ, рд╕реНрдерд┐рд░рд╛рдВрдХ рдЖрджрд┐ рд╣реИрдВред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЛ Vue-common рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

рджреВрд╕рд░реЗ рд╕рдмрдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реЛрддреА рд╣реИрдВ, рдпрд╣ рд╡реЗрдмрдкреИрдХ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рджреМрд░рд╛рди рд▓реЛрдбрд░ рдФрд░ рд╣реЗрд▓реНрдкрд░реНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЛ Vue-bundler рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рдЕрдиреНрдп рддрд░реАрдХреЛрдВ рдХреЛ рднреА рд╕рд╛рдорд╛рдиреНрдп рдФрд░ рд╕реНрдерд╛рдиреАрдп рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред Vue-common рдореЗрдВ, рдкреЛрд░реНрдЯрд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ, рдкреНрд░рд╢рд╛рд╕рди рд╡рд┐рдзрд┐рдпреЛрдВ, рдкреЛрд░реНрдЯрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рддрдХ рдкрд╣реБрдВрдЪ рдФрд░ рдЕрдиреНрдп рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрд░реАрдХреЗ рдкреЗрд╢ рдХрд┐рдП рдЧрдП рдереЗред рд╕рднреА рдПрдкреАрдЖрдИ рдПрдВрдбрдкреЙрдЗрдВрдЯреНрд╕ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рдкрд░ рдкрдВрдЬреАрдХреГрдд рдереЗ рдФрд░ рд╡реАрдпреВ рдЙрджрд╛рд╣рд░рдг рд╕реЗ рдЬреБрдбрд╝реЗ рдереЗред рддрдм рдЙрдиреНрд╣реЗрдВ рдЖрд╡реЗрджрди рдореЗрдВ рдХрд╣реАрдВ рднреА рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛ред

рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╕реЗрд╡рд╛ рдкреНрд▓рдЧрдЗрди рдХреЗ рдЕрдВрджрд░ рдкрдВрдЬреАрдХреГрдд рд╣реИред Vue рдореЗрдВ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЙрдкрдпреЛрдЧ рдлрд╝рдВрдХреНрд╢рди рд╣реИред рдпрд╣рд╛рдБ Vue рдореЗрдВ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВ ред

рдкреНрд▓рдЧрдЗрди рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

class Api {
    constructor () {
        //  http ,   
        this.instance = instance

        //     
       //     this,      http 
        Object.keys(commonServices).forEach(name => commonServices[name](this))
        
        //     
	requireService.keys().forEach(filename => requireService(filename).default(this))
    }

    install () {
	Vue.prototype.$api= this
    }
}

export default new Api()

рдЖрд░рдВрднреАрдХрд░рдг рдХреЗ рдЕрд▓рд╛рд╡рд╛:

  1. Http рдХреНрд▓рд╛рдЗрдВрдЯ рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬреЛ рд╣рдорд╛рд░реЗ рдмреИрдХрдПрдВрдб рдФрд░ рд╣реЗрдбрд░ рдХреЗ рдмреЗрд╕рд▓ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ

    const instance = axios.create({
    	baseURL: '/example/api',
    	responseType: 'json',
    	headers: {
    		'Content-Type': 'application/json',
    		'Cache-Control': 'no-cache',
    		'Pragma': 'no-cache',
    	}
    })
                    backend   ,   axios.

  2. рд╕реЗрд╡рд╛рдПрдБ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИрдВ рдЬреЛ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕реНрд╡рдпрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреА рд╣реИрдВ

    // api -   http 
    export default api => {
    	api.exampleService= {
    		exampleGetRequest(params) {
    			return api.instance.request({
    				method: 'get',
    				url: `example/get`,
    				params
    			})
    		},
    		examplePostRequest(data) {
    			return api.instance.request({
    				method: 'post',
    				url: `example/post`,
    				data
    			})
    		},
    	}
    }
    

    рд╡рд╛рдЙ-рдХреЙрдорди рдореЗрдВ рдХреЗрд╡рд▓ рдЗрд╕ рддрд░рд╣ рдХреА рд╕реЗрд╡рд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ, рдФрд░ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА Api рд╡рд░реНрдЧ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдкреЛрд░реНрдЯрд▓реЗрдЯ рдХреЗ рд▓рд┐рдП рдкрдВрдЬреАрдХреГрдд рд╣реИ
  3. рд╕рд╛рдорд╛рдиреНрдп рдФрд░ рд╕реНрдерд╛рдиреАрдп рд╕реЗрд╡рд╛рдПрдВ рдкрдВрдЬреАрдХреГрдд рд╣реИрдВ

         const requireService = require.context('./service', false, /.service.js$/)
    

рдШрдЯрдХреЛрдВ рдореЗрдВ, рд╡реЗ рдмрд╣реБрдд рд╕рд░рд▓рддрд╛ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

export default {
	methods: {
		someMethod() {
    			this.$api.exampleService.exampleGetRequest()
}
}
}

рдпрджрд┐ рдЖрдкрдХреЛ рдЖрд╡реЗрджрди рдХреЗ рдмрд╛рд╣рд░ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдк рдпрд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

//    (@ -     )
import api from тАШ@/apiтАЩ

//        
api.exampleService.exampleGetRequest()

рд╕реНрдХреЗрд▓рд┐рдВрдЧ

рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдкреЛрд░реНрдЯрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдмрдВрдбрд▓ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдмрдВрдбрд▓ рдХреЗ рдЕрдкрдиреЗ рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рд╣реЛрддреЗ рд╣реИрдВред рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ, рдШрдЯрдХ рдФрд░ рд╕рдВрдкрддреНрддрд┐ рдкрдВрдЬреАрдХреГрдд рд╣реИрдВ, рдкреНрд░рд╛рдзрд┐рдХрд░рдг рд╕реНрдерд╛рдиреАрдп рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдкреНрд▓рдЧ-рдЗрди рдЬреБрдбрд╝реЗ рд╣реБрдП рд╣реИрдВред

рдШрдЯрдХ рд╕реНрдерд╛рдиреАрдп рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рджреЛрдиреЛрдВ рддрд░рд╣ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдкрдВрдЬреАрдХреГрдд рд╣реИрдВред

рдШрдЯрдХ рдкрдВрдЬреАрдХрд░рдг рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

import _ from тАЬlodashтАЭ

const requireComponent = require.context('@/components', true, /^[^_].+\.vue$/i)

requireComponent.keys().forEach(filename => {
    const componentConfig = requireComponent(filename)

    // Get PascalCase name of component
    const componentName = _.upperFirst(
        _.camelCase(/\/\w+\.vue/.exec(filename)[0].replace(/^\.\//, '').replace(/\.\w+$/, ''))
    )

    Vue.component(componentName, componentConfig.default || componentConfig)
})

рдХрднреА-рдХрднреА рдпрд╣ рдЙрд╕ рдкреЛрд░реНрдЯрд▓ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдЕрджреНрд╡рд┐рддреАрдп рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдРрд╕реЗ рдШрдЯрдХреЛрдВ рдХреЛ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИрдВ, рдпрд╛ рдмрд╕ рдПрдХ рдШрдЯрдХ рдХреЛ рдПрдХ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рдШрдЯрдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП / Components-portal / * portal name * / *ред Vue, рдФрд░ рдЗрд╕реЗ рд╡рд╛рдВрдЫрд┐рдд рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдмрд┐рдВрджреБ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░реЗрдВ, рдЬрд┐рд╕рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдХрдИ рдХреЗ рд▓рд┐рдПред

const contexts = [
    require.context('@/components', true, /^[^_].+\.vue$/i),
   require.context('@/components-portal/example', true, /^[^_].+\.vue$/i)
]

contexts.forEach(requireComponent => {
    requireComponent.keys().forEach(filename => {
        const componentConfig = requireComponent(filename)

        // Get PascalCase name of component
        const componentName = _.upperFirst(
            _.camelCase(/\/\w+\.vue/.exec(filename)[0].replace(/^\.\//, '').replace(/\.\w+$/, ''))
        )

        Vue.component(componentName, componentConfig.default || componentConfig)
    })
})

рдпрджрд┐ рдЖрдк рдШрдЯрдХ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреЛрд░реНрдЯрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдирд╛рдо рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдмрд╕ рдПрдХ рд╡рд╕реНрддреБ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдЗрд╕ рдкреЛрд░реНрдЯрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдШрдЯрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдПрд╕рд╡реАрдЬреА рдЖрдЗрдХрди рдЬреИрд╕реЗ рдПрд╕реЗрдЯреНрд╕ рднреА рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдкрдВрдЬреАрдХреГрдд рд╣реИрдВред рд╣рдо svg- рд╕реНрдкреНрд░рд╛рдЗрдЯ-рд▓реЛрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ svg рдЖрдЗрдХрдиреЛрдВ рд╕реЗ рд╕реНрдкреНрд░рд╛рдЗрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ <рдЙрдкрдпреЛрдЧ: xlink: href = "# * рдЖрдЗрдХрди рдирд╛рдо *" /> рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрдпреЛрдЧ

рдХрд░рддреЗ рд╣реИрдВ, рд╡реЗ рдЗрд╕ рддрд░рд╣ рдкрдВрдЬреАрдХреГрдд рд╣реИрдВ:

const requireAll = (r) => r.keys().forEach(r)

const requireContext = require.context('@/assets/icons/', true, /\.svg$/)

requireAll(requireContext)

рди рдХреЗрд╡рд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛, рдмрд▓реНрдХрд┐ рдШрдЯрдХ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╕реНрдХреЗрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкреЛрд░реНрдЯрд▓ рдХреЗ рд▓рд┐рдП рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рддрдВрддреНрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИред рдПрдХрд▓-рдлрд╝рд╛рдЗрд▓ рдШрдЯрдХ <style> рдЯреИрдЧ рдореЗрдВ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреЛрд░реНрдЯрд▓ рдХреЗ рд▓рд┐рдП рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рдЕрдиреНрдп рдЯреИрдЧ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

All Articles