https://jsfiddle.net/wangmin/rdjjpc7a/1628/
in dieser demo,wenn ich auf enter klicke
ich habe e.stopPropagation() und e.preventDefault() verwendet
aber es funktioniert nicht
es wird eine neue Zeile ändern
ich möchte das nicht
wie vermeide ich ...
Danke
An deinem Beispiel stimmt einiges nicht:
Anstelle von @keyup.onEnter="update"
müssen Sie @keyup.enter="onEnter"
aufrufen, da der Name Ihrer Methode onEnter
ist, nicht update
, und der Name des Modifikators enter
ist onEnter
.
Zweitens: Der Zeilenumbruch wird in den Textbereich von keydown
eingefügt, nicht von keyup
, also sollte der vollständige Code wie folgt lauten:
<div id="editor">
<textarea :value="input" @keydown.enter="onEnter"></textarea>
</div>
Hier ist eine aktualisierte Geige: https://jsfiddle.net/tedt89kv/
Denken Sie auch daran, dass Ihre Benutzer Text mit Zeilenumbrüchen kopieren und in Ihr Dokument einfügen können. Vielleicht wäre ein Watcher eher das, was Sie wollen. Im Watcher können Sie alle Zeilenumbrüche bei jeder Änderung des Werts von textarea entfernen.
Außerdem aus der Problemvorlage, die Sie entfernt haben, um Ihre Frage zu posten:
Die Problemliste dieses Repositorys ist ausschließlich für Fehlerberichte und Funktionsanfragen bestimmt. Für einfache Fragen nutzen Sie bitte die folgenden Ressourcen:
- Lesen Sie die Dokumentation: https://vuejs.org/guide/
- Video-Tutorials ansehen: https://laracasts.com/series/learning-vue-step-by-step
- Fragen Sie im Chatroom von Gitter: https://gitter.im/vuejs/vue
- Fragen Sie in den Foren: http://forum.vuejs.org/
- Fragen zum Stapelüberlauf suchen/stellen: https://stackoverflow.com/questions/ask?tags=vue.js
danke u ... ich werde beim nächsten Mal mehr darüber nachdenken
Hilfreichster Kommentar
An deinem Beispiel stimmt einiges nicht:
Anstelle von
@keyup.onEnter="update"
müssen Sie@keyup.enter="onEnter"
aufrufen, da der Name Ihrer MethodeonEnter
ist, nichtupdate
, und der Name des Modifikatorsenter
istonEnter
.Zweitens: Der Zeilenumbruch wird in den Textbereich von
keydown
eingefügt, nicht vonkeyup
, also sollte der vollständige Code wie folgt lauten:Hier ist eine aktualisierte Geige: https://jsfiddle.net/tedt89kv/
Denken Sie auch daran, dass Ihre Benutzer Text mit Zeilenumbrüchen kopieren und in Ihr Dokument einfügen können. Vielleicht wäre ein Watcher eher das, was Sie wollen. Im Watcher können Sie alle Zeilenumbrüche bei jeder Änderung des Werts von textarea entfernen.