5

Po pierwsze, mam problem z OOP w javascript, i rozumiem, bardzo mało o tym, ale muszę rozwiązać problem ...Jak mogę rozszerzyć Modal w Bootstrap 4?

Cóż, staram zastosowanie na Bootstrap 4, biblioteki wykonanej na bootstrap 3: https://github.com/nakupanda/bootstrap3-dialog

pojawia się następujący błąd: „nie można nazwać klasę jako funkcję”

szuka kodu, odkryłem latków:

1 - classCallCheck: jest to funkcja, która zgłasza błąd . Przypuszczam, że zmusza użytkownika do używania "nowego" i tworzenia instancji obiektu i nigdy nie wywołuje funkcji;

2 - createClass: jest funkcją konstruującą klasy, więc klasy w Bootstrap 4 nie są zdefiniowane w sposób konwencjonalny.

3 - Dziedziczenie: to kolejna funkcja i pokazuje, że dziedziczenie również nie jest konwencjonalne.

4 - Biblioteka posiada ten kod do rozszerza Bootstrap modalnych:

var BootstrapDialogModal = function (element, options) { 
    Modal.call(this, element, options); 
}; 

Ale Modal.call wywołać błąd: „Nie można połączyć się z klasą jako funkcję”.

Przypuszczam, że jedynym problemem jest BootstrapDialogModal dziedziczy Modal w warunkach dziedziczenia nałożonych przez Bootstrap 3, a gdy Bootstrap 4 jest aktywny, te warunki nie są takie same.

Stosuj jsfiddle: http://jsfiddle.net/g6nrnvwu/

ktoś wie jak mogę dostosować ten kod?

Dzięki.

+0

Bootstrap 4 jest ogromna zmiana/Remake z Bootstrap 3. Dzieje się tak dlatego, że (być może) w bootstrapie 4 występuje konfliktowa nazwa nowej klasy o nazwie "Modal". Możesz spróbować zmienić wszystkie funkcje o nazwie "Modal" w tej bibliotece z inną nazwą. Może to zadziała, ale wciąż jest więcej konfliktów. Lepiej użyj innej biblioteki alternatywnej lub sam siebie (ponieważ to robię i jestem pewien, że mniej biblioteki stron trzecich przyjdzie na szybsze ładowanie strony) ._. –

+1

Proszę podać jsfiddle. –

+1

Otrzymujesz następujący komunikat "Nie można wywołać klasy jako funkcji", ponieważ naprawdę nie możesz użyć klasy jako funkcji. W Bootstrap 4 Modal jest klasą, a jeśli wtyczka używa podstawowej klasy Modal, powinna ją rozszerzyć. Polecam Ci zapomnieć o używaniu takiej kombinacji, ponieważ nie możesz po prostu naprawić jej za pomocą kilku linii (również biorąc pod uwagę, że Modal został przerobiony na ścieżce do Bootstrap 4). Twoje pytanie może zostać rozwiązane w sposób bezpośredni tylko przez całkowite przepisanie wtyczki)) – Lambrusco

Odpowiedz

1

OK, to nie jest dokładnie odpowiedź, ale przykład, który może ci pomóc. Jest to klasa stworzona do obsługi modala dynamicznie wstawiającego jego znaczniki w locie. To nie jest BS4, ale możesz użyć go jako przewodnika?

ModalUtils