Какие компиляторы предназначаются для времени выполнения JavaScript?

Самый простой способ перенаправить на последнюю страницу - это напрямую использовать URI:

Logout

(request.forwardURI - это полный URL-адрес, отображаемый в браузере, а request.contextPath - это URL-адрес. часть, представляющая контекст приложения, например. " http: // localhost: 8080 / yourApp " - таким образом, результатом удаления пути контекста из прямого URI является относительный к приложению URI, например. "/ mycontroller / myaction ")

В своем действии выхода из системы просто перенаправьте на этот URI:

def targetUri = params.targetUri ?: "/"
redirect(uri: targetUri)

AFAIK, использование реферера не совсем безопасно, поскольку это зависит от агента пользователя (браузера) добавить HTTP-заголовок реферера (который мог быть отключен).

Что касается вашего второго вопроса: Grails автоматически интерпретирует значения атрибутов списка или карты в GSP как выражения Groovy. Таким образом, этот

Logout

эквивалентен

Logout

, и перенос частей этого выражения снова в ${...}, похоже, сбивает с толку компилятор GSP.

Надеюсь, это поможет.

11
задан sepp2k 14 March 2019 в 13:39
поделиться

5 ответов

OpenLaszlo работает на компиляторе XML -> Javascript с открытым исходным кодом (технически DHTML, также может компилироваться во Flash). Я немного поигрался с ним, и это показалось мне интересным, хотя я никогда не использовал его всерьез (плохая поддержка IDE, когда я его пробовал).

Objective-j - похожий проект, похожий на objective-c, хотя работает как javascript (не уверен, компилирует ли он его или имеет интерпретатор js). Я мало что об этом знаю, но время от времени вижу сообщения об этом на Ajaxian .

3
ответ дан 3 December 2019 в 02:41
поделиться
1
ответ дан 3 December 2019 в 02:41
поделиться

Хотя есть и другие продукты, которые компилируются в javascript (отмечены в других комментариях), я считаю, что GWT, безусловно, является наиболее зрелым с точки зрения использования в реальном мире. . Тот простой факт, что ряд основных приложений Google используют GWT (например, новый графический интерфейс adwords, волна Google и т. Д.), Означает, что вы можете быть уверены, что продукт будет поддерживаться как минимум в течение следующих нескольких лет, это не просто собирается исчезнуть в ближайшее время.

Также следует иметь в виду, что GWT - это гораздо больше, чем компилятор java-to-javascript, он также является оптимизирующим компилятором, у него есть режим хоста, он полностью совместим с собственным javascript, он объединяет изображения, он выполняет разделение кода в новой версии и т. д.

2
ответ дан 3 December 2019 в 02:41
поделиться

Parenscript - это «переводчик с небольшого языка Lispy на JavaScript». Это не Common Lisp - это в основном синтаксис Lisp для Javascript, хотя для простых вещей вы можете написать один и тот же код для обоих, если будете осторожны. Я тоже не уверен, что назвал бы это «зрелым».

4
ответ дан 3 December 2019 в 02:41
поделиться

Pyjamas компилирует Python в JavaScript.

HotRuby запускает исходный код Ruby под JavaScript и Flash.

Orto ] является (была?) JVM, реализованной на JavaScript. (Исходный сайт не работает; ссылка на запись в блоге.)

Фреймворк ZK , который любит сравнивать себя с GWT, использует Java и XML для создания JavaScript. (Они утверждают, что для того же самого требуется гораздо меньше кода, чем GWT.)

И я слышал, что jQuery - это отдельный язык, который реализуется и запускается ниже, JavaScript. : -)

4
ответ дан 3 December 2019 в 02:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: