В настоящее время я экспериментирую с различными форматами модулей JavaScript и загрузчиком, а также хотел попробовать Закрытие Google.
У меня есть базовый пример. работает, но не могу понять, как использовать goog.require
для внешней библиотеки. Возьмем, к примеру, JQuery из CDN.
Сейчас делаю следующее. На HTML-странице:
<script src="https://code.jquery.com/jquery-2.1.3.min.js"></script>
И в сценарии:
goog.require("Greets");
goog.provide("Greets.MsgDivMessenger");
Greets.MsgDivMessenger = function() {};
Greets.MsgDivMessenger.prototype.sendMessage = function(message)
{
$('#msg').text(message);
};
Это работает, поскольку глобальный $
включается через тег <script .../>
в саму HTML-страницу.
Но я хотел бы загрузить JQuery через goog.require
, без тега <script .../>
на HTML-странице:
goog.require("Greets");
goog.require("$");
goog.provide("Greets.MsgDivMessenger");
Greets.MsgDivMessenger = function() {};
Greets.MsgDivMessenger.prototype.sendMessage = function(message)
{
$('#msg').text(message);
};
Я попытался добавить URL-адрес JQuery CDN в качестве зависимости:
goog.addDependency('https://code.jquery.com/jquery-2.1.3.min.js', ['$'], []);
Но это не сработало, вместо этого goog.require
попытался загрузить .../closure/goog/https://code.jquery.com/jquery-2.1.3.min.js
.
Да, я знаю, что JQuery для $('msg')
мне не нужен, но смысл в том, чтобы управлять модулями (в том числе и внешними) с помощью Google Closure.
Как мне goog.require
JQuery из CDN?