Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Примеры запускаются через раз #41

Open
tamtakoe opened this issue May 31, 2013 · 13 comments
Open

Примеры запускаются через раз #41

tamtakoe opened this issue May 31, 2013 · 13 comments
Assignees
Labels

Comments

@tamtakoe
Copy link
Collaborator

Если этот пример запустить по прямой ссылке http://www.angular.ru/cookbook/watcharray он не заведется не зависимо от браузера. Если же перейти на него с другого примера, то все ОК.

@ghost ghost assigned maksimr May 31, 2013
@maksimr
Copy link
Collaborator

maksimr commented Jun 1, 2013

Перешел все работает

@tamtakoe
Copy link
Collaborator Author

tamtakoe commented Jun 1, 2013

У меня теперь тоже... Странная ситуация. Вчера чуть ли не в течении часа пробовал из разных браузеров. Раньше, кстати и с другими примерами подобное было. Может быть сборке еще какое-то время нужно, чтобы окончательно собраться... Закрою пока, но буду следить за этим)) Может быть насобираю более подробную инфу.

@tamtakoe tamtakoe closed this as completed Jun 1, 2013
@tamtakoe
Copy link
Collaborator Author

tamtakoe commented Jun 1, 2013

Проблема все же есть. У меня опять не работает, теперь этот пример: http://angular.ru/cookbook/toggle. При том, что до этого работал, да и последняя правка носила косметический характер. Возможно, один и тот же код собирается по-разному. Ошибка всегда одна и та же:

Error: No module: myApp
at Error ()
at http://ajax.googleapis.com/ajax/libs/angularjs/1.1.4/angular.min.js:17:426
at a (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.4/angular.min.js:17:190)
at http://ajax.googleapis.com/ajax/libs/angularjs/1.1.4/angular.min.js:17:321
at http://ajax.googleapis.com/ajax/libs/angularjs/1.1.4/angular.min.js:25:298
at Array.forEach (native)
at o (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.4/angular.min.js:6:244)
at e (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.4/angular.min.js:25:242)
at wb (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.4/angular.min.js:29:331)
at c (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.4/angular.min.js:16:7) <div class="well doc-example-live animator-container" ng-embed-app="myApp" ng-set-html="index.html-81" ng-eval-javascript="index.js toggle.js">

2:38 Только что опять заработало. Причем сразу во всех браузерах. Нужно посмотреть, менялся ли в это время код на сервере. Тревис показывает, что никаких новых сборок не было.

@tamtakoe tamtakoe reopened this Jun 1, 2013
@tamtakoe
Copy link
Collaborator Author

tamtakoe commented Jun 3, 2013

После последнего изменения перестал работать первый пример отсюда: http://www.angular.ru/cookbook/watcharray
При наборе чего-нибудь в полях выскакивает:

TypeError: Cannot set property 'index' of undefined
at Object.eval [as fn](eval at %28http://www.angular.ru/angular-bootstrap-prettify.min.js:11:104%29, :15:23)
at Object.e.$digest (http://www.angular.ru/angular.min.js:88:356)
at Object.e.$apply (http://www.angular.ru/angular.min.js:90:431)
at HTMLInputElement.Va.i (http://www.angular.ru/angular.min.js:117:436)
at http://www.angular.ru/angular.min.js:23:358
at Array.forEach (native)
at o (http://www.angular.ru/angular.min.js:6:244)
at HTMLInputElement.c (http://www.angular.ru/angular.min.js:23:329)

В JSFiddle и Plunker всё пашет

@maksimr
Copy link
Collaborator

maksimr commented Jun 3, 2013

Мне кажется конфликтуют два примера :)

В обоих используется одно и то же имя для контроллера UserListCtrl.
Надо попробовать изменить имя контроллера во втором примере.

@maksimr
Copy link
Collaborator

maksimr commented Jun 3, 2013

По поводу toggle:
Там последовательность загрузки скриптов такая index.js, toggle.js.

 <script src="index.js"></script>
 <script src="toggle.js"></script>

В нашем случае модуль myApp зависит от ui.toggle.
Я не уверен что код ниже отработает верно, так как модуля ui.toggle,
еще нет.

angular.module('myApp', ['ui.toggle']);

Можно поменять местами скрипты, например что бы сначало загружался toggle.js, а потом index.js
и посмотреть что будет :)

@tamtakoe
Copy link
Collaborator Author

tamtakoe commented Jun 3, 2013

В примерах действительно был конфликт имен (отмечу на будущее). Во втором случае изменение последовательности скриптов не помогло. Да и не должно было, по идее)

16:44 Перестал работать второй пример отсюда: http://angular.ru/cookbook/jqplugins Т.е. он и раньше не работал, но из-за того, что jQuery-плагин не мог найти, а сейчас даже ангуляровская часть не пашет. Ошибка стандартная: Error: No module: myApp

P.S. Кстати, о птичках. Первый случай раньше работал не смотря на то что контроллеры одинаково назывались. Последнее изменение эту часть не затрагивало :)

@maksimr
Copy link
Collaborator

maksimr commented Jun 3, 2013

Мне кажется там снова проблема с глобальным состоянием. Надо понять что за angular используется в
тесте. И откуда он пытается взять модуль myApp :)

P.S. Порядок загрузки скриптов всегда лучше соблюдать.
И я бы сказал странно как он работал до этого :). Откуда бы он взял модуль ui.toggle? :)

@tamtakoe
Copy link
Collaborator Author

tamtakoe commented Jun 4, 2013

Вроде последняя версия используется http://www.angular.ru/angular.min.js Или я не про то? :-)

Видимо, зависимости Ангуляр в конце определяет или когда весь DOM загрузится. На локальной машине всегда подключал главный модуль первым и никаких проблем не было)

@maksimr
Copy link
Collaborator

maksimr commented Jun 4, 2013

Все примеры это директивы, которые eval-ят javascript.
Когда мы пишем angular.module('myAwesomeApp', []); есть
два варианта какой angular используется, глобальный или
локальный(в примере определяется свой angular). Локальный может использоваться что бы не засорять глобальный
и не было конфликтов имен.

@tamtakoe
Copy link
Collaborator Author

Кстати, не нашел чтобы запускался где-то локальный ангуляр. Парсер даже ng-app директиву удаляет :-)
Еще не работает пример из официальной сборки http://angular.ru/api/ng.directive:script, что странно...

@maksimr
Copy link
Collaborator

maksimr commented Jun 16, 2013

На off сайте он тоже не работает) Можно поковыряться и исправить ...

@tamtakoe
Copy link
Collaborator Author

Да, ну тогда проще подождать пока они сами исправят))

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants