Как сделать Bootstrap-vue Toast в независимом файле javascript

Прошло несколько дней с тех пор, как я изучаю vue.js, я хотел сделать функцию, которая показывает тост, читая официальные документы bootstrap-vue: https://bootstrap-vue.org/docs/components/ toast#toasts-on-demand, я смог сделать тост с помощью внедрения экземпляра компонента и из пользовательского компонента, однако я хочу сделать еще один пользовательский тост с помощью независимой функции/файла javascript, чтобы я мог вызывать его динамически.

Вот код Cart.vue, который я использовал для инъекции:

<script>
export default {
  methods: {
    purchaseHandler() {
      this.$bvToast.toast('The item added to your cart', {
          title: 'Notification',
          variant: 'succes',
          solid: true
        })
    },
  },
};
</script>

Однако я сделал custom-toast.js как независимую функцию/файл js и импортировал плагин, как указано в документах:

import Vue from 'vue'
import { ToastPlugin } from 'bootstrap-vue'
Vue.use(ToastPlugin)

export default () => {
    this.$bvToast.toast('Toast body content', {
        title: 'Toast test',
        variant: 'succes',
        solid: true
      })
}

И я импортировал custom-toast.js в свой файл Cart.vue, теперь он выглядит так:

<script>
import customToast from "./custom-toast";
export default {
  methods: {
    purchaseHandler() {
      customToast()
  },
};
</script>

Теперь приходит ОШИБКА:

[Предупреждение Vue]: ошибка в обработчике v-on: «TypeError: невозможно прочитать свойство $bvToast неопределенного»

TypeError: Невозможно прочитать свойство $bvToast неопределенного

Я знаю, что это очень простой материал, он думал, что смогу решить его, найдя эквивалент этой инъекции. вопрос

  1. Что эквивалентно this.$bvToast или любой инъекции bootstrap-vue в независимом файле js?
  2. Как решить эту проблему?

Спасибо. Извините за плохой английский

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
2 330
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

вы можете сделать миксин файл смотрите в https://v2.vuejs.org/v2/guide/mixins.html. и вы можете вызвать функцию в миксине после того, как вы импортируете и объявите миксин в разделе скрипта.

Другие вопросы по теме