Перейти к основному содержанию

Кастомизация эффектов

Около 1 минУчебник с примерамиКастомизацияКастомизация

В этом руководстве вы узнаете, как настроить эффекты темы.

Очистка эффектов

По умолчанию тема будет:

  • Использовать список цветов для украшения категорий и тегов
  • Добавлять анимацию при переключении страниц и элементов
  • Добавлять анимацию к элементам домашней страницы и добавлять эффекты наведения к функциям
  • Использовать более причудливую кнопку копирования кода
  • Использовать причудливые всплывающие подсказки
  • Добавлять затухание при переключении между дневным и ночным режимами

Если вам нужно удалить эти причудливые стили, установите pure: true в параметрах темы, чтобы включить чистый режим.

Между тем, вы можете контролировать продолжительность анимации, управляя $color-transition и transform-transition в файле палитры:

// .vuepress/styles/palette.scss

$color-transition: 0s;
$transform-transition: 0s;

Добавление эффектов

Вы можете добавлять дополнительные эффекты на свой сайт с помощью параметров файла конфигурации и клиентских файлов, предоставляемых VuePress.

  • Если вам нужно добавить глобальные CSS и JS, установите параметр VuePress head в файле конфигурации.

    Пример

    // .vuepress/config.ts
    import { defineUserConfig } from "vuepress";
    
    export default defineUserConfig({
      //...
    
      head: [
        //...
    
        // import an external script
        ["script", { src: "YOUR_SCRIPT_LINK" }],
        // add a script
        [
          "script",
          {},
          `\
            // your script here
          `,
        ],
        // add an external CSS
        ["link", { rel: "stylesheet", href: "YOUR_STYLE_LINK" }],
        // add a style
        // We don't recommend this, you should prefer to use .vuepress/style/index.scss
        [
          "style",
          {},
          `\
            /* your style here */
          `,
        ],
      ],
    
      //...
    });
    
  • Если вам нужно добавить CSS и JS на уровне страницы, установите параметр head в Front Matter.

    ---
    head:
      - script: YOUR_SCRIPT_LINK
      - script:
          type: module
          src: YOUR_SCRIPT_LINK
      - style: YOUR_STYLE_LINK
      - style:
          type: text/css
          content: |
            /* your style here */
    ---
    
    Содержание страницы
    
    ...
    
  • Более глобальные расширенные операции можно выполнять через файл конфигурации клиента.

    // .vuepress/client.ts
    import { defineClientConfig } from "vuepress/client";
    import ExampleGlobalComponent from "./components/ExampleGlobalComponent.vue";
    import ExampleRootComponent from "./components/ExampleRootComponent.vue";
    import { setupExampleCompositionAPI } from "./composables/exampleCompositionAPI";
    
    export default defineClientConfig({
      // Client enhancements
      enhance: ({ app }) => {
        // register global component
        app.component("ExampleGlobalComponent", ExampleGlobalComponent);
      },
    
      // global registration
      setup() {
        // Register the global Composition API
        setupExampleCompositionAPI();
      },
    
      // global component
      rootComponents: [
        "ExampleRootComponent",
        //...
      ],
    });