Wpis z mikrobloga

Hejej Mirki,
Mam problem z selectpickerem(bootstrap-select) i vue.
W jaki sposób zaimportować metody, bym mógł ich używać wewnątrz komponentów Vue? Dodają się style, ale nie mogę używać metod selectpickera.

Np. chciałbym wywołać metodę $('#jakisid').selectpicker()

mounted: function() {
$('selectpicker').selectpicker();
}

i dostaję ciągle błąd:

Error in mounted hook: "TypeError: jquery_WEBPACKIMPORTEDMODULE3___default()(...).selectpicker is not a function

(samo odpalenie $('selectpicker') oczywiście działa)

próbowałem importu wewnątrz komponentu,
import 'bootstrap';
import 'bootstrap-select';
import 'bootstrap-select/dist/css/bootstrap-select.css';
czy tam:
require('bootstrap');
require('bootstrap-select');
require('bootstrap-select/dist/css/bootstrap-select.css');

próbowałem też wrzucać cdn w public/index.html ale też to nic nie zmienia (jeżeli dodaję selectpicker w ten sposób wygląda jakby działał, ale nadal nie mogę z wewnątrz komponentów używać metod selectpickera).

#javascript #vuejs #frontend #bootstrap
  • 10
  • Odpowiedz
(samo odpalenie $('selectpicker') oczywiście działa)


@UrimTumim:

A jak importujesz jQuery? Co zwraca $('.selectpicker')? Pewnie robisz jakiś nieprawidłowy import, albo drobna literówka.


@lojawyk:
import $ from 'jquery'
  • Odpowiedz
@RolnikSamWdolinie: wiem, że jQuery to zło;p a jQuery w projekcje z Vue to zlo^2, zwłaszcza że od es6+ używanie jQuery zupełnie traci sens. Ale też nie będę przepisywał całej logiki napisanej przez kogoś innego w jQuery, żeby osadzić dwa komponenty. Bo zwyczajnie nie mam na to czasu;/
  • Odpowiedz