0Pricing
Frontend Academy · Ders

Eklenti Sistemi: app.use()

install yöntemi olan bir nesne biçiminde Vue eklentisi oluşturmayı, genel bileşenler ve yönergeler kaydetmeyi ve değerleri tüm uygulamaya sağlamayı öğrenin.

Eklenti Sistemi: app.use(), CoddyKit'te ücretsiz bir Frontend Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Frontend Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Frontend Academy kursu toplamda 4 dersten oluşur.

Vue Eklentisi Nedir?

Eklenti, bir Vue app'ine yüklediğiniz yeniden kullanılabilir işlevselliktir: genel component'ler, yönergeler, sağlanan değerler ve prototip tarzı yardımcılar (router, i18n, pinia). Kütüphaneler Vue ile eklentiler aracılığıyla bütünleşir.

Eklenti Yapısı

Eklenti, install(app, options) yöntemine sahip bir nesnedir veya install yöntemi olarak görev yapan bir işlevdir.

// MyPlugin.ts
export default {
  install(app, options) {
    // Configure things here
  }
};

Eklenti Yükleme

Vue app örneği üzerinde app.use(plugin, options) çağrısını yapın.

import { createApp } from 'vue';
import App from './App.vue';
import MyPlugin from './plugins/MyPlugin';

const app = createApp(App);
app.use(MyPlugin, { theme: 'dark' });
app.mount('#app');

Eklenti Kullanım Alanı: Genel Component'ler

Tüketicilerin her birini içe aktarmak zorunda kalmaması için çok sayıda küçük component'i genel olarak kaydedin.

// plugins/iconPack.ts
import IconChevron from './IconChevron.vue';
import IconClose from './IconClose.vue';
import IconUser from './IconUser.vue';

export default {
  install(app) {
    app.component('IconChevron', IconChevron);
    app.component('IconClose', IconClose);
    app.component('IconUser', IconUser);
  }
};

// main.ts
app.use(iconPack);

Eklenti Kullanım Alanı: Genel Yönergeler

Özel yönergeleri bir kez kaydedin; böylece app genelinde kullanılabilir olsunlar.

export default {
  install(app) {
    app.directive('focus', { mounted: (el) => el.focus() });
    app.directive('click-outside', clickOutsideDirective);
  }
};

Eklenti Kullanım Alanı: provide()

Herhangi bir component'in inject edebileceği app geneli değerler sağlayın; bu, API istemcileri ve yapılandırma için yaygındır.

import type { InjectionKey } from 'vue';
import { ApiClient } from './ApiClient';

export const ApiKey: InjectionKey<ApiClient> = Symbol('api');

export default {
  install(app, { baseURL }) {
    const api = new ApiClient({ baseURL });
    app.provide(ApiKey, api);
  }
};

// Anywhere:
const api = inject(ApiKey)!;

Gerçek Eklentiler: Pinia, Vue Router, i18n

Başlıca Vue ekosistemi kütüphaneleri eklentidir.

import { createPinia } from 'pinia';
import router from './router';
import { createI18n } from 'vue-i18n';

const app = createApp(App);
app.use(createPinia());
app.use(router);
app.use(createI18n({ /* ... */ }));

Eklenti Seçenekleri

Eklentiler, yükleme sırasında davranışlarını yapılandırmak için seçenekleri kabul eder.

app.use(MyPlugin, {
  apiUrl: 'https://api.example.com',
  enableLogs: true,
  theme: 'dark'
});

// Inside the plugin:
install(app, options) {
  if (options.enableLogs) console.log('plugin installed');
}

TypeScript Genişletmesi

Genel özellikler veya enjeksiyon yardımcıları için Vue'nun türlerini genişleterek tüketicilerin otomatik tamamlama özelliğine sahip olmasını sağlayın.

// types.d.ts
declare module '@vue/runtime-core' {
  interface ComponentCustomProperties {
    $api: ApiClient;
  }
}

// In plugin:
install(app) {
  app.config.globalProperties.$api = new ApiClient();
}

globalProperties — Eski Kalıp

app.config.globalProperties.$foo, Options API component'lerinde ve şablonlarda bir değeri this.$foo olarak dışa açar. Composition API, inject() kullanımını tercih eder.

Tekrarlı Kuruluma Uygunluk

İki kez yüklendiğinde hata vermeyin; bir bayrak kontrol edin veya doğal olarak yinelenen kayıtları engelleyen Symbol tabanlı provide anahtarları kullanın.

Kendi Eklentinizi Yazma

Birden fazla app aynı yapılandırmayı (kimlik doğrulama sarmalayıcısı, telemetri kurulumu, tasarım belirteçleri) yeniden kullanıyorsa bunları bir eklenti olarak paketleyin. Temiz bir install(app, options) imzasıyla npm'de yayımlamak, yeniden kullanılabilir işlevselliği dağıtmanın Vue'ya özgü yoludur.

Hızlı Kontrol

Bir eklentiyi yüklemek için Vue app örneği üzerinde hangi yöntemi çağırırsınız?

Özet: Vue Eklentileri

Eklenti = install(app, options) içeren nesne. app.use(plugin, options) ile yüklenir. Genel component'leri ve yönergeleri kaydetmek, değerler sağlamak ve kütüphaneleri yapılandırmak için kullanılır. Pinia, Vue Router ve i18n birer eklentidir. $ ön ekli özellikler için ComponentCustomProperties'i genişletin. install işlemini yinelenebilir tutun.

Sıkça Sorulan Sorular

“Eklenti Sistemi: app.use()” dersi ücretsiz mi?

Evet — “Eklenti Sistemi: app.use()” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Frontend Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Frontend Academy kursu toplamda 4 dersten oluşur.

“Eklenti Sistemi: app.use()” dersinde ne öğreneceğim?

install yöntemi olan bir nesne biçiminde Vue eklentisi oluşturmayı, genel bileşenler ve yönergeler kaydetmeyi ve değerleri tüm uygulamaya sağlamayı öğrenin. Frontend Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Frontend Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Frontend Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Eklenti Sistemi: app.use()” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Frontend Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Frontend Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Bağımlılık Ekleme için provide() ve inject()
  2. Eşzamansız Bileşenler ve Suspense
  3. Özel Yönergeler
  4. Eklenti Sistemi: app.use()
← Frontend Academy Sayfasına Dön