2013-01-24 84 views
2

解釋性語言(如PHP)允許使用單獨的文件(通常稱爲config.php)包含字符串常量(如服務器名稱)。這有利於部署,因爲配置文件在代碼更新時根本不上載 - 服務器名稱(例如,對於REST事務,在部署環境中通常是不同的。DART:配置設置的最佳做法是什麼

在Dart中,由於它已編譯,所以此方法無效。如果服務器名稱常量通過{{}}在HTML中引用,則似乎必須在部署之前重新編譯代碼。

有沒有辦法指定字符串常量以避免重新編譯的要求?

+1

我懷疑目前的答案是「你不行」,但它只是最後一次討論一週 - 請參閱[dartlang小組的此帖](https://groups.google.com/a/dartlang.org/d/msg/misc/5rM931f5XOk/FTaXdqnF4BAJ)。 –

回答

1

有我能想到的幾個選項:

一個竅門是把配置的主機名鍵控的地圖。在運行時,使用window.location作爲關鍵字從地圖查找配置。這將允許將配置烘焙到Dart源中,但仍允許爲不同的環境指定不同的值。

如果您希望能夠在編譯後更改您的配置,可以將其嵌入到HTML源代碼中,或通過HTTP請求加載它。 (然而,按照定義,這不是一個常數,根據定義,在編譯時間之後不可能改變常量)

0

好吧,簡短的回答是「你不能」 - 此刻。但是Dart團隊意識到這個限制,並且正按照上面的評論在達特朗中討論它。

相關問題