Es kann funktionieren, wenn Turbolinks deaktiviert sind.
Ein CSS-Framework, das die Einführung von Materialdesign erleichtert. Es ist gut, die mit Bootstrap fertiggestellte Benutzeroberfläche bereinigen zu können. Es gibt jedoch eindeutige Einstellungen und Einschränkungen bei der Verwendung jeder Komponente, und es ist ziemlich eigenartig.
Bevor Sie verschiedene Komponenten verwenden, müssen Sie mit jQuery (oder JS) erste Einstellungen vornehmen.
Zum Beispiel muss das Auswahlformular `f.select``` vor`
f.label``` schreiben.
Wie nachstehend.
(Wählen Sie ein Formular aus, das mit normalen Schienen erstellt wurde)
<%= f.label :column %>
<%= f.select :column, ~ %>
(Beim Erstellen einer Auswahl mit Materialisieren)
<%= f.select :column, ~ %>
<%= f.label :column %>
Dann wird Ihnen klar, dass Sie es schnell mit Rails-Formularen ausfüllen möchten. ... Ich sehe das Rails-Formular nach der Installation von Materialise nicht.
Also habe ich es geschafft, ausgewählte Arbeiten zum Laufen zu bringen, und als ich damit herumgespielt habe, habe ich den Fehler bekommen, dass es nicht richtig funktioniert hat, wie der Titel sagt.
--JS wird von Sprockets verwaltet
"Formular funktioniert nicht ordnungsgemäß" bedeutet, dass die Auswahl nur angezeigt wird, wenn die Seite neu geladen wird. Es gab keinen Fehler in der Konsole.
Wenn jQuery nicht richtig gelesen werden kann, gehen Sie daher vorübergehend davon aus.
layouts/application.html.erb und Vermögen/javascripts/application.js
bestätigen.
Ich fand einen Ort, um den ich mir Sorgen machen musste.
<%= javascript_include_tag 'application', data-turbolinks-track': 'reload' %>
Um nach Turbolinks als Schlüsselwort zu suchen.
## Probleme mit Turbolinks
#### **`$(document).ready(function()Zündet nicht`**
```ready(function()Zündet nicht
Die Hauptoperation von Turbolinks ist
- fetchReplacement
<a> Tag-Links in Ajax konvertieren
- fetchHistory
Stellen Sie beim Ändern von Seiten durch Zurückgeben wieder her, ob die Seite wiederhergestellt werden kann
Es scheint, dass `` `ready``` bei keiner der oben genannten Operationen ausgelöst wird.
## Wenn Sie jQuery verwenden möchten, während Sie Turbolinks verwenden
--``` $ (Dokument) .on'ready page: load'`` `
Definieren Sie sowohl `` `ready``` in jQuery als auch` `` page: load``` in Turbolinks
- Lassen Sie die oben genannten Maßnahmen mit `` `jquery-turbolinks gem``` treffen
- Deaktivierbare Turbolinks
## Verfahren zum Deaktivieren von Turbolinks
(Gemfile) gem 'turbolinks' #Löschen
(assets/javascripts/application.js) //= require jquery //= require materialize //= require turbolinks #Löschen //= require rails-ujs //= require_tree .
(layouts/application.html.erb)
<%= stylesheet_link_tag 'application', media: 'all' %> - <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %> + <%= javascript_include_tag 'application' %> - <%= javascript_include_tag 'materialize', 'data-turbolinks-track': 'reload' %> + <%= javascript_include_tag 'materialize' %> ```Das obige Verfahren scheint effektiv zu sein, wenn der Vorgang unter iOS 13 usw. nicht gut verläuft.
[Was ich getan habe, um die Turbolinks fernzuhalten](https://qiita.com/saboyutaka/items/bcc0966313c6f7399a6e#trigger%E3%81%AE%E7%99%BA%E7%81%AB%E3%82 % BF% E3% 82% A4% E3% 83% 9F% E3% 83% B3% E3% 82% B0)
Das Formularauswahl-Tag mit materialise kann unter iOS 13 nicht korrekt ausgewählt werden
[Rails] Turbolinks deaktivieren
Recommended Posts