У меня есть библиотека, которая работает в (function() { ... })();
схеме ...Вызов функции из библиотеки, вне библиотеки
// mylibrary.js
(function() {
function myfunc() { alert('hello'); };
if (...)
return;
// do something
})();
... что я использую в HTML страницу:
<!DOCTYPE html>
<html lang="en">
<body>
<div>Bonjour</div>
<script src="mylibrary.js"></script>
<script>
myfunc(); // scope error !
</script>
</body>
</html>
Как позвонить функции myfunc()
за пределами библиотеки? Должен ли я изменить схему (function() { ... })();
? (что я имел обыкновение делать return
внутри библиотеки)
Что является наиболее распространенной практикой?
Это библиотека, о которой я говорю (она моя, и ее нужно улучшить, конечно!): Https://github.com/josephernest/bigpicture.js/blob/master/bigpicture.js – Basj
как написано, вы не можете. вы можете опубликовать функции, необходимые для окна, внутреннего объекта или использовать экспортер-экспортер bsed, например commonJS – dandavis
@ dandavis. Какая наиболее распространенная практика? (Я бы хотел избежать сторонних инструментов/библиотек для экспорта)? – Basj