在本教程中提到的here,由模块提供的命名空间是:命名空间问题
goog.provide('tutorial.notepad.Note');
但我很奇怪,为什么不是这个:
goog.provide('tutorial.notepad');
由于,根据下面提到的规则:
tutorial = tutorial || {};
tutorial.notepad = tutorial.notepad || {};
tutorial.notepad.Note = tutorial.notepad.Note || {};
如果我们只是提供:
goog.provide('tutorial.notepad');
那么,我们就已经有了:
tutorial = tutorial || {};
tutorial.notepad = tutorial.notepad || {};
,这是我们本可以添加的属性Note
tutorial.notepad.Note = function() {};
因此,我的问题是:
为什么不只是声明goog.provide('tutorial.notepad')
然后用它来包含顶级Classes
,而不是其推荐使用goog.provide('tutorial.notepad.Note')
每个Class
这对我来说是多余的。
谁说我不使用'goog.provide'?请仔细阅读问题。 – CodeYogi
我在开头添加了一段。也许我还没有理解你的问题? – owler
更新我的问题,希望现在清楚。 – CodeYogi