Технически, вы можете использовать ключевое слово class
сегодня (начиная с версии 6.5 - см. https://docs.sencha.com/cmd/6.7.0/guides/whats_new_cmd65.html).
Чего вы не можете сделать, так это смешать class
с Ext.define()
занятия без каких-либо последствий. Они вряд ли будут решены в ближайшее время, так что просто держите миры отдельно для безопасной меры: используйте Ext.define()
для расширения классов Ext JS; если хотите, используйте class
для своих классов.
Важным элементом является инструмент для сборки.
Если вам нужен транспортер, для этой цели Sencha Cmd имеет Google Closure Compiler. Используя Sencha Cmd, вы можете создать единый пакет скриптов для вашей страницы, который включает только классы Ext JS, необходимые вашему приложению. Это не позволит вам использовать import
или export
для включения модулей ES6 в ваше приложение.
Если вы не используете Sencha Cmd, вы можете использовать предварительно созданные ext-all.js
или ext-all-debug.js
и включите один из них через тег <script>
в свой файл разметки. Оттуда, используйте веб-пакет, накопительный пакет или что-то еще, чтобы собрать остальную часть вашего кода. Вы получите доступ к объекту Ext
в глобальной области видимости, но другой код может быть в модулях.
По поводу предостережения: в модуле 'use strict'
включен по умолчанию. Это не позволит callParent()
методу Ext JS определить метод суперкласса, поэтому вы не можете его использовать. Аналогично, метод statics()
нельзя использовать, но это редко требуется. Обязательно протестируйте свой код и избегайте вызова метода, который не будет работать в строгом режиме или не будет использовать строгий режим (который не подходит, если вы используете ключевые слова import
и export
).