Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.05.2015, 03:35
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

Имя файла не соответствует имени класса - итог приложение не запускается, ошибок нет
Если вдруг встретился в extend или в requires класс, в файле которого, в define имя класса другое (с банальной ошибкой какой-нибудь, например букву пропустили), то приложение вообще не запускается и никаких ошибок не генерируется.

Например загружаю

require("Zevs.controller.command.InsertCommand")


а в файле

define("Zevs.controller.command.Insert", ...


Проблема в том, что если изначально не знаешь где ошибка, то приходится: а) вспоминать, что это скорее всего именно этот случай (не знаю как другие, а я что-то долго это вспоминаю), б) когда вспомнил - приходится долго искать в файлах, где же несоответствие имени файла и имени класса в файле.

Как сделать, чтобы выскакивало хоть какое-то сообщение об ошибке?
Ответить с цитированием
  #2 (permalink)  
Старый 23.05.2015, 03:47
Аватар для nohuhu
Профессор
Отправить личное сообщение для nohuhu Посмотреть профиль Найти все сообщения от nohuhu
 
Регистрация: 21.05.2015
Сообщений: 321

Использовать Sencha Cmd, оно взорвётся на этапе построения дерева зависимостей. ;)
Ответить с цитированием
  #3 (permalink)  
Старый 23.05.2015, 07:08
Профессор
Отправить личное сообщение для siber-biber Посмотреть профиль Найти все сообщения от siber-biber
 
Регистрация: 07.08.2013
Сообщений: 214

В консоль браузера смотрите. Там пишутся ошибки. Ну и на закладке "сеть" можно банально 404 увидеть..
Ответить с цитированием
  #4 (permalink)  
Старый 23.05.2015, 19:17
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

Сообщение от siber-biber Посмотреть сообщение
В консоль браузера смотрите. Там пишутся ошибки. Ну и на закладке "сеть" можно банально 404 увидеть..
Ошибок нет.

404 не появляется по причине, что файл-то найден! А вот класса в нем (ну искомого конечно) нету.

Так что увы, похоже нужен Cmd.
Ответить с цитированием
  #5 (permalink)  
Старый 24.05.2015, 06:47
Профессор
Отправить личное сообщение для siber-biber Посмотреть профиль Найти все сообщения от siber-biber
 
Регистрация: 07.08.2013
Сообщений: 214

В принципе я никогда не испытывал такой потребности.. но такую проверку можно самостоятельно прикрутить к редактору в котором вы работаете, либо добавить в другой этап воркфлоу вашей разработки.
Вещь то элементарная пройти по файлам и проверить чтоб имена совпадали с Ext.define('...', ...

У нас например практикуются хуки перед коммитом в которых мы гоняем лёгкие санити тесты. Вот я бы туда такое и вписал наверно..
Ответить с цитированием
  #6 (permalink)  
Старый 24.05.2015, 17:15
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

Цитата:
самостоятельно прикрутить к редактору
Хмм... я об этом вообще не подумал. Надо глянуть Cloud9 поддерживает подобные фичи или нет. Спасибо за подсказку.
Ответить с цитированием
  #7 (permalink)  
Старый 26.05.2015, 19:54
Аватар для nohuhu
Профессор
Отправить личное сообщение для nohuhu Посмотреть профиль Найти все сообщения от nohuhu
 
Регистрация: 21.05.2015
Сообщений: 321

Сообщение от khusamov Посмотреть сообщение
Хмм... я об этом вообще не подумал. Надо глянуть Cloud9 поддерживает подобные фичи или нет. Спасибо за подсказку.
Если будете пытаться что-то такое делать, то настраивайте фичу сразу, чтобы поиск шёл только по коду вашего приложения. С основным фреймворком и user extensions проверка "имя файла === имя класса в Ext.define" сломается много где.
Ответить с цитированием
  #8 (permalink)  
Старый 26.05.2015, 21:25
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

ну да... туда лучше не лезть...

посмотрел, в Cloud9 есть такая возможноссть - называется плагины и бандлы. Но там все по взрослому сделано. СДК есть даже. В общем придется это отложить, потом вернусь и освою построение плагинов. Думаю что не только этот плагин понадобиться. Спасибо за наводку - знаю где можно подобные проблемы решать))))
Ответить с цитированием
  #9 (permalink)  
Старый 27.05.2015, 01:54
Аватар для nohuhu
Профессор
Отправить личное сообщение для nohuhu Посмотреть профиль Найти все сообщения от nohuhu
 
Регистрация: 21.05.2015
Сообщений: 321

Я уже говорил: для решения подобных проблем есть специальный инструмент, Sencha Cmd. Вам принципиально велосипед изобретать?

Я помню о вашей проблеме с Cmd и Cloud9, открыл тикет и обсудил эту тему с нашими инструментальщиками. Проблему признают, обещали когда-нибудь пофиксить. Вряд ли это будет быстро, т.к. сериализация и выгрузка данных из памяти сейчас кодом не предусмотрена, и нужно некий рефакторинг устроить.

Поэтому рекомендую поискать временные пути обхода проблемы.
Ответить с цитированием
  #10 (permalink)  
Старый 27.05.2015, 14:42
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

Цитата:
Вам принципиально велосипед изобретать?
Нет. Но у меня есть еще задачи другие, которые легко решаются плагинами для Cloud9, например деплой.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Использование классов в JavaScript devote Ваши сайты и скрипты 70 01.02.2013 17:17