Я довольно новичок в мире JavaScript (особенно когда речь идет о библиотеках). Многие из них говорят вам использовать require('libName')
как способ интеграции библиотеки на вашу веб-страницу/приложение. Может ли кто-нибудь объяснить мне, как именно это работает и как это реализовать? Причина по умолчанию require() не работает.JavaScript, требующий библиотек
ответ
JavaScript в браузере не имеет функции require
, эта функция предоставляется внешними библиотеками по двум наиболее популярным спецификациям: CommonJS и AMD. Взгляните на RequireJS, который отлично сочетается с обоими узорами.
JavaScript на сервере (NodeJS) по умолчанию использует спецификацию CommonJS.
Требование - это либо созданная вручную функция, которая была бы написана сама, либо она является частью библиотеки, которую вы загрузили бы перед ЛЮБОЙ другой JS на странице.
Например, RequireJS - это библиотека, которая имеет дело только с загрузкой зависимостей (и, если потребуется, пространство имен).
Вы можете сделать свой собственный довольно просто, с помощью onload
события из тега сценария программно вставить на страницу (или onreadystatechange
для старых версий IE), с парой откаты в зависимости от того, сколько супер-стар браузеры, которые вы хотите поддержать.
Изучая шаблоны для «Обещаний», вы также можете вдаваться в нужные зависимости прямо в середине своих модулей.
Опять же, разные библиотеки поддерживают это по-разному.
Вот очень легкий требуется:
var require = function(src, success, failure){
!function(source, success_cb, failure_cb){
var script = document.createElement('script');
script.async = true; script.type = 'text/javascript'; script.src = source;
script.onload = success_cb || function(e){};
script.onerror = failure_cb || function(e){};
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(script);
}(src, success, failure);
}
require('js/jquery.js', function(){
console.log('jQuery is ready to use');
}, function(){
console.log("Something went wrong loading this script");
});
- 1. Javascript, не требующий вывода
- 2. Функциональный вызов Javascript, требующий уникального имени
- 3. Javascript, требующий фиктивного вызова «этого» для работы
- 4. Создание внешних Javascript-библиотек
- 5. Сравнение библиотек Javascript
- 6. несколько библиотек javascript?
- 7. jQuery $ .Ajax, требующий ответа
- 8. «Портативный» PCL, требующий родной код - почему?
- 9. Использование библиотек Javascript с CocoaScript
- 10. Сравнение скорости библиотек JavaScript-диаграмм
- 11. Загрузка библиотек Javascript в Meteor
- 12. Проблемы в упорядочении библиотек JavaScript
- 13. Импорт нескольких библиотек JavaScript externan
- 14. Отпечаток пальца Уникальность библиотек javascript
- 15. Зависимость MVVM от библиотек javascript?
- 16. Ошибка при загрузке библиотек javascript
- 17. Использование библиотек JavaScript внутри Gruntfile
- 18. Добавление библиотек JavaScript в Sonar
- 19. Android, требующий ненужных разрешений
- 20. getContentPane(), требующий быть отличным
- 21. JQuery, требующий новых полей
- 22. NSInvocation, требующий NSMethodSignature
- 23. , требующий угловых модулей в браузере
- 24. Интервал, требующий перехода от css
- 25. Как сделать Javascript JSON-запрос API, требующий проверки подлинности
- 26. Загрузить HTML-контент, требующий авторизации?
- 27. RESTEasy - @Path, требующий полного пути?
- 28. Durandal, требующий viewmodel из оболочки
- 29. Объект, требующий проверки ошибок Outlook
- 30. Источник изображения URI, требующий авторизации
RequireJS не имеет ничего общего с требовать («») СФ Адонис спрашивает о, на самом деле это имя очень запутанным, следует назвать AMDJS. require ('package') является обычным стилемJS, который можно легко использовать в браузере с помощью таких инструментов, как Webmake или Browserify –