#rascal
Вопрос:
Я создаю веб-приложение salix и пытаюсь использовать CodeMirror в соответствии с примерами salix.
Я не могу выполнить пример CodeMirror в salix.demo.basic, хотя я могу легко выполнить все остальные примеры в basic, поэтому мне интересно, изменилось ли что-нибудь с тех пор, как они были написаны.
Код, который я использую:
module salix::demo::basic::CodeMirror
import salix::HTML;
import salix::App;
import salix::lib::CodeMirror;
import IO;
alias Model = tuple[list[Msg] changes, str src];
SalixApp[str] cmApp(str id = "root") = makeApp(id, init, view, update, parser=parseMsg);
App[str] cmWebApp()
= webApp(
cmApp(),
|project://projectName/src/salix/demo/basic/index.html|,
|project://projectName/src|
);
Model init()
= <[], "function hello() {n console.log('Hello world');n}">;
data Msg
= myChange(int, int, int, int, str, str)
;
Model update(Msg msg, Model model) {
switch (msg) {
case m:myChange(int _, int _, int _, int _, str _, str _):{
println("Update called");
model.changes = [m];
}
}
return model;
}
void view(Model model) {
div(() {
h2("Code Mirror demo");
div(() {
codeMirror("cm", style(("height": "auto")), onChange(myChange),
mode("javascript"), lineNumbers(true), value(model.src));
});
for (Msg m <- model.changes) {
text(m);
text("; ");
}
});
}
В моем приложении мне удалось отобразить пример CodeMirror следующим образом:
codeMirror("cm", onChange(cmChange), style(("height": "50%")),
lineNumbers(true), value(model.projectViewInfo.src), lineWrapping(true), class("cm-s-3024-night"));
но сообщение об изменении никогда не отправляется ( cmChange
), и источник никогда не обновляется. Так что это частично работает на меня.
Этот пример также можно найти в библиотеке salix https://github.com/usethesource/salix/tree/master/src/salix/demo/basic
Комментарии:
1. Хороший вопрос. Я спрошу у друга.
2. Есть новости? @Юрген
3. @tijs-van-der-storm спрашивал
basic
, работает ли демо-версия неправильно или только ваше приложение. Возможно, вы сможете уточнить свой вопрос в этой связи.4. @ThomasH Обновлено
5. Всякий раз, когда я редактирую код в веб-приложении, я получаю сообщение об ошибке:
jquery-1.11.0.min.js:4 GET http://localhost:9050/root/msg?id=14amp;maps=amp;type=codeMirrorChangeamp;fromLine=8amp;fromCol=2amp;toLine=8amp;toCol=2amp;text= amp;removed= 404 (Not Found)