hummingbird
@hummingbird

Почему возникает ошибка «TypeError: newsList is not a function»?

newsList = (news_id) ->
  alert news_id
  return


В html коде прописываю это:
<script>
	newsList(10);
</script>


В ответ получаю эту ошибку:
TypeError: newsList is not a function. (In 'newsList(10)', 'newsList' is an instance of HTMLDivElement)
(анонимная функция)

В чем проблема то? Судя по документации CoffeeScript, функции именно так и пишутся... Ну и в JS они именно так и вызываются.
  • Вопрос задан
  • 133 просмотра
Решения вопроса 1
nazarpc
@nazarpc
Open Source enthusiast
Всё потому что newsList будет объявлена в локальной области видимости, ваш код будет обернут в (function() {...}).call(this);
Если хотите использовать как в вашем примере - нужно явно это указывать:
window.newsList = (news_id) ->
  alert news_id
  return
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы