Глобальный API Vue3
Глобальный API Vue3 выглядит следующим образом:
| Нет. | API и описание | Пример |
|---|---|---|
| 1 | createApp() Создать экземпляр приложения Vue, обычно используемый для клиентского рендеринга. |
const app = createApp(App) |
| 2 | createSSRApp() Создать экземпляр приложения Vue для серверного рендеринга (SSR). |
const app = createSSRApp(App) |
| 3 | app.mount() Смонтировать экземпляр приложения Vue к указанному DOM-элементу. |
app.mount('#app') |
| 4 | app.unmount() Размонтировать экземпляр приложения Vue. |
app.unmount() |
| 5 | app.onUnmount() Зарегистрировать функцию обратного вызова для момента размонтирования приложения. |
app.onUnmount(() => { console.log('App is being unmounted') }) |
| 6 | app.component() Зарегистрировать глобальный компонент, позволяя использовать компонент где угодно. |
app.component('MyComponent', MyComponent) |
| 7 | app.directive() Зарегистрировать глобальную директиву, позволяя создавать пользовательские директивы. |
app.directive('focus', { mounted(el) { el.focus() } }) |
| 8 | app.use() Установить плагин, который может предоставить приложению дополнительный функционал. |
app.use(SomePlugin) |
| 9 | app.mixin() Зарегистрировать глобальный миксин, предоставляющий общие данные или методы всем компонентам. |
app.mixin({ methods: { globalMethod() { ... } } }) |
| 10 | app.provide() Предоставить зависимости всему приложению, обеспечивая общий доступ к данным между компонентами. |
app.provide('key', 'some value') |
| 11 | app.runWithContext() Запустить функцию в контексте приложения Vue, позволяя получить доступ к данным контекста. |
app.runWithContext(() => { console.log('Running inside app context') }) |
| 12 | app.version Получить текущий номер версии Vue. |
console.log(app.version) |
| 13 | app.config Получение и установка глобальной конфигурации экземпляра приложения. |
app.config.globalProperties.$myProperty = 'value' |
| 14 | app.config.errorHandler Установить глобальную функцию обработчика ошибок, срабатывающую при возникновении необработанной ошибки в приложении. |
app.config.errorHandler = (err, vm, info) => { console.error(err) } |
| 15 | app.config.warnHandler Установить глобальную функцию обработчика предупреждений для обработки предупреждающих сообщений в приложении. |
app.config.warnHandler = (msg, vm, trace) => { console.warn(msg) } |
| 16 | app.config.performance Включить мониторинг производительности для предоставления данных о производительности рендеринга. |
app.config.performance = true |
| 17 | app.config.compilerOptions Настроить параметры компилятора шаблонов, управляющие поведением компиляции шаблонов. |
app.config.compilerOptions.delimiters = ['[[', ']]'] |
| 18 | app.config.globalProperties Установить глобальные свойства, доступные всем компонентам в приложении. |
app.config.globalProperties.$myGlobalProperty = 'value' |
| 19 | app.config.optionMergeStrategies Определить стратегии слияния опций компонентов, управляющие тем, как сливаются опции компонентов. |
app.config.optionMergeStrategies.methods = (parent, child) => { return { ...parent, ...child } } |
| 20 | app.config.idPrefix Установить префикс для идентификаторов экземпляров Vue, по умолчанию — "vue-". |
`app.config.idPrefix = 'myApp-' |
| 21 | app.config.throwUnhandledErrorInProduction Управлять тем, выбрасываются ли необработанные ошибки в производственной среде. |
app.config.throwUnhandledErrorInProduction = false |
| 22 | version Получить текущий номер версии Vue. |
console.log(Vue.version) |
| 23 | nextTick() Выполнить отложенную функцию обратного вызова после завершения обновления DOM; используется для обработки асинхронных обновлений DOM. |
nextTick(() => { console.log('DOM updated') }) |
| 24 | defineComponent() Используется для определения компонентов, обеспечивая вывод типов и более простой синтаксис. |
export default defineComponent({ name: 'MyComponent' }) |
| 25 | defineAsyncComponent() Определите асинхронные компоненты, которые лениво загружаются при необходимости. |
const AsyncComponent = defineAsyncComponent(() => import('./AsyncComponent.vue')) |
API экземпляра приложения
1. createApp()
-
Описание: Создайте экземпляр приложения Vue.
-
Использование:
createApp(rootComponent, rootProps) -
Parameters:
-
rootComponent: Корневой компонент. -
rootProps(Необязательно): Пропсы, передаваемые корневому компоненту.
-
Пример
import App from './App.vue';
const app = createApp(App);
2. createSSRApp()
-
Описание: Создайте экземпляр приложения Vue, поддерживающий рендеринг на стороне сервера (SSR).
-
Использование:
createSSRApp(rootComponent, rootProps) -
Parameters:
-
rootComponent: Корневой компонент. -
rootProps(Необязательно): Пропсы, передаваемые корневому компоненту.
-
Пример
import App from './App.vue';
const app = createSSRApp(App);
3. app.mount()
-
Описание: Смонтируйте приложение к DOM-элементу.
-
Использование:
app.mount(container) -
Parameters:
-
container: DOM-элемент или строка селектора.
-
Пример
4. app.unmount()
-
Описание: Размонтируйте экземпляр приложения.
-
Использование:
app.unmount()
Пример
5. app.onUnmount()
-
Описание: Зарегистрируйте функцию обратного вызова, которая будет вызвана при размонтировании приложения.
-
Использование:
app.onUnmount(callback) -
Parameters:
-
callback: Функция, вызываемая при размонтировании.
-
Пример
console.log('Приложение размонтировано');
});
6. app.component()
-
Описание: Зарегистрировать или получить глобальный компонент.
-
Использование:
-
Регистрация:
app.component(name, component) -
Получение:
app.component(name)
-
-
Parameters:
-
name: Имя компонента. -
component: Определение компонента.
-
Пример
template: '<div>My Component</div>'
});
7. app.directive()
-
Описание: Зарегистрировать или получить глобальную директиву.
-
Использование:
-
Регистрация:
app.directive(name, directive) -
Получение:
app.directive(name)
-
-
Parameters:
-
name: Имя директивы. -
directive: Определение директивы.
-
Пример
mounted(el) {
el.focus();
}
});
8. app.use()
-
Описание: Установить плагин.
-
Использование:
app.use(plugin, options) -
Parameters:
-
plugin: Плагин. -
options(Необязательно): Параметры плагина.
-
Пример
app.use(MyPlugin);
9. app.mixin()
-
Описание: Глобальные параметры миксина.
-
Использование:
app.mixin(mixin) -
Parameters:
-
mixin: Объект миксина.
-
Пример
created() {
console.log('Глобальный миксин создан');
}
});
10. app.provide()
-
Описание: Предоставление глобальных зависимостей.
-
Использование:
app.provide(key, value) -
Parameters:
-
key: Имя зависимости. -
value: Значение зависимости.
-
Пример
11. app.runWithContext()
-
Описание: Запуск функции в текущем контексте приложения.
-
Использование:
app.runWithContext(fn) -
Parameters:
-
fn: Функция для запуска.
-
Пример
console.log('Запуск с контекстом приложения');
});
12. app.version
-
Описание: Получить версию Vue.
-
Использование:
app.version
Пример
13. app.config
-
Описание: Объект конфигурации приложения.
-
Использование:
app.config
Пример
console.error(err);
};
14. app.config.errorHandler
-
Описание: Функция глобального обработчика ошибок.
-
Использование:
app.config.errorHandler = (err, vm, info) => {} -
Parameters:
-
err: Объект ошибки. -
vm: Экземпляр компонента, в котором произошла ошибка. -
info: Сообщение об ошибке.
-
Пример
console.error('Global error:', err);
};
15. app.config.warnHandler
-
Описание: Функция глобального обработчика предупреждений.
-
Использование:
app.config.warnHandler = (msg, vm, trace) => {} -
Parameters:
-
msg: Предупреждающее сообщение. -
vm: Экземпляр компонента, в котором возникло предупреждение. -
trace: Стек предупреждений.
-
Пример
console.warn('Глобальное предупреждение:', msg);
};
16. app.config.performance
-
Описание: Включение отслеживания производительности.
-
Использование:
app.config.performance = true
Пример
17. app.config.compilerOptions
-
Описание: Настройка параметров компилятора шаблонов.
-
Использование:
app.config.compilerOptions = { /* options */ }
Пример
18. app.config.globalProperties
-
Описание: Добавление глобальных свойств.
-
Использование:
app.config.globalProperties[key] = value
Пример
19. app.config.optionMergeStrategies
-
Описание: Пользовательская стратегия объединения опций.
-
Использование:
app.config.optionMergeStrategies[key] = strategy
Пример
return child || parent;
};
20. app.config.idPrefix
-
Описание: Установка префикса ID компонента.
-
Использование:
app.config.idPrefix = 'my-app-'
Пример
21. app.config.throwUnhandledErrorInProduction
-
Описание: Выбрасывать необработанные ошибки в производственной среде.
-
Использование:
app.config.throwUnhandledErrorInProduction = true
Пример
Общий API
1. version
-
Описание: Получить версию Vue.
-
Использование:
Vue.version
Пример
2. nextTick()
-
Описание: Выполнить обратный вызов после завершения следующего цикла обновления DOM.
-
Использование:
nextTick(callback) -
Parameters:
-
callback: Функция обратного вызова.
-
Пример
nextTick(() => {
console.log('DOM updated');
});
3. defineComponent()
-
Описание: Определить компонент.
-
Использование:
defineComponent(options) -
Parameters:
-
options: Опции компонента.
-
Пример
const MyComponent = defineComponent({
template: '<div>My Component</div>'
});
4. defineAsyncComponent()
-
Описание: Определить асинхронный компонент.
-
Использование:
defineAsyncComponent(loader) -
Parameters:
-
loader: Функция асинхронной загрузки.
-
Пример
const AsyncComponent = defineAsyncComponent(() =>
import('./MyComponent.vue')
);