0
我在我的gulpfile.js裏有一個類似於這個的配置對象。在gulp配置文件中訪問JavaScript對象中的兄弟鍵值
var config = {
sass: {
source: '...',
dest: '...',
config: {
style: 'compressed',
errLogToConsole: false
},
...
},
notify: {
...
},
...
somethingElse: {
rootPath: '/some/specific/path',
folderName: '/projectRootFolder',
someValueThatReuseTwoDeclaredAbove: this.rootPath this.folderName,
anotherKey: this.someValueThatReuseTwoDeclaredAbove '/vendor'
}
};
我想重用我的變量根據第somethingElse
類似的聲明在預覽對象。
當我嘗試像這樣訪問它們時this.somethingElse.rootPath
我收到錯誤Cannot read property 'rootPath' of undefined
。當我嘗試像這樣訪問它this.rootPath
然後我沒有得到錯誤,但文件從未複製到配置中指定的位置。 如何從當前對象中訪問鍵,以便在聲明變量時可以重用它們的值?
謝謝你的建議,但這或多或少是我已經將它作爲解決方法。我想把它作爲一個對象。主要是因爲我正在學習JS,我想知道如何面向未來。另一個原因是我喜歡這樣。必須有一些優雅的方式直接做到這一點。如果有人願意幫助我,或者至少讓我指向正確的方向,我會等待一段時間。如果沒有人出現,我會接受你的答案作爲其他人的解決方法,即使它沒有幫助我。 – theStudent 2014-09-08 14:58:37
@theStudent你不能在JavaScript中。 (我不知道是否有另一種語言,你可以) – Volune 2014-09-08 15:29:06
嗯,這是奇怪的。我知道對於普通的「level」對象,這個'this.key'是可能的。這也是我期望作爲語言本身包含的一項功能。但也許你是對的。我仍在學習JavaScript,聽起來你比我知道的更多。我知道JS不支持封裝,所以它可能是正確的。我知道在新版本中它已經或者已經有一段時間了。那麼謝謝你的時間,我現在就離開它。 – theStudent 2014-09-10 06:12:20