Можно ли использовать коллекции GWT Elemental в неэлементных приложениях?

Можно ли использовать коллекции Elemental (elemental.util.Collections, elemental.util.ArrayOfInt, elemental.util.MapFromStringTo и т. Д.) В неэлементном приложении GWT. Я уже использую эти модули:

<!-- Inherit the core Web Toolkit stuff.                        -->
<inherits name='com.google.gwt.user.User' />

<!-- Inherit the RequestBuilder stuff.                        -->
<inherits name="com.google.gwt.http.HTTP" />


<!--  Inherit GQuery -->
<inherits name='com.google.gwt.query.Query' />

Но я бы хотел начать использовать облегченные коллекции Elemental, а не Java ArrayList и HashMap. Это возможно? Было бы довольно легко портировать с Elemental в его собственный модуль для этой цели? Спасибо за помощь.

2 ответа

Решение

Конечно, все, что вам нужно сделать, это включить следующую декларацию в дескриптор вашего модуля (*.gwt.xml):

<inherits name="elemental.Elemental"/>

См. Элементный пример на стволе GWT.

Я не мог получить проекты GWT Elemental silvercomet или просто выполнить в FireFox.

Однако приведенный ниже простой элементный тестовый код выполняется в FireFox и Chrome вместе с модулями gwt user и http.

Файл модуля.

<module rename-to="HelloElemental">
    <inherits name="elemental.Elemental" />
    <!-- Inherit the core Web Toolkit stuff. -->
    <inherits name='com.google.gwt.user.User' />
    <!-- Inherit the RequestBuilder stuff. -->
    <inherits name="com.google.gwt.http.HTTP" />
    <add-linker name="xsiframe" />
    <set-configuration-property name="devModeRedirectEnabled" value="true" />
    <entry-point class="com.google.silvercomet.client.Main" />
</module>

Класс точки входа -

import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.Window;

import elemental.util.ArrayOf;
import elemental.util.Collections;

public class Main implements EntryPoint
{
    public void onModuleLoad()
    {
        ArrayOf<String> items = Collections.arrayOf();
        items.insert( 0, "First" );
        Window.alert( items.get( 0 ) );
    }
}
Другие вопросы по тегам