goog.require是否需要在子类中重复,如果它的基类导入它

时间:2015-02-06 17:26:02

标签: javascript closures google-closure

我有一个继承了导入goog.string类的基类的sublcass。鉴于子类继承了基类,子类是否需要导入goog.string库才能使用它?我认为这将是多余的。

// Base class
goog.provide('baseClass')
goog.require('goog.string');

baseClass = function() {

}

// Subclass
goog.provide('subClass')
goog.require('baseClass')
goog.require('goog.string');  // do i need this in order to use goog.string?

baseClass = function() {


}
goog.inherits(subClass.prototype, baseClass);

1 个答案:

答案 0 :(得分:2)

您的代码不需要立即运行 但如果您依赖于“依赖关系的需求”,它肯定会导致维护问题。如果您的超级类不再需要“goog.string”并将其删除,则需要您的代码中断。这个问题对你来说是一个规模问题,但是对所有依赖关系的明确性通常被认为是一种很好的做法。