2010-07-06 30 views
6

我想問一個關於新的和大規模的web項目的javascript要求的問題。我們將在我們的項目中使用大量的javascript,ajax請求,jquery,json對象& jquery插件。我們計劃在全局站點配置文件中將全局變量和大量默認值存儲在服務器端的php類和ini文件中。最佳做法在新的web項目上的JavaScript配置

但我們需要閱讀,使用和有時覆蓋客戶端的一些變量和配置值與JavaScript - jQuery的。

這個基於JavaScript的配置文件必須具有以下屬性;

  • 將不具有所有服務器端配置值。只有我們需要。
  • 必須是一個單獨的文件,將在HTML頭部分調用。
  • 必須定義一個全局變量或json或javasctipt對象或數組(我不知道哪個是最好的)
  • 這個值必須由其他javascript函數和對象訪問。
  • 將存儲布爾值,字符串,整數可能是一些小的5-6個不同頁面的初始化方法(例如:我們不需要產品詳細信息頁面上的主頁面配置值,我們不需要產品詳細信息頁面的一些初始化方法和主頁上的值等)
  • 我們需要在每個頁面上達到此配置對象的一些值,如debugMode = true或false等。
  • 我們需要知道在其他javascript對象中通過此運行平臺圖像和其他資源路徑的配置文件(開發人員測試階段生產)

此外,我們可以完全生成此或者生成一個靜態的.js文件,並且在PHP請求之後,設置一些用戶頁面特定的或特定於語言的值,而不是必須在Js對象中放置(覆蓋)一些服務器端生成的值。

該解決方案的最佳做法是什麼?有什麼建議麼?

回答

3
  • 必須定義一個全局變量或JSON 或javasctipt物體或陣列(我不知道 這是最好的)

JSON基本上是一個對象常量,因此它可以做兩個。去吧。將JSON看作一個序列化的JavaScript對象。

  • 此值必須通過 其他JavaScript 函數和對象可到達的。

只要運行JSON,它就會在您的代碼中可用。

  • 將存儲 布爾,字符串,整數也許 爲 5-6不同的頁面(如一些小的初始化方法。:我們不 需要對 商品詳細頁的主網頁的配置值,我們不 需要商品詳細頁的一些 初始化方法和價值觀 主頁等)

同樣,JSON可以做到這一切。

所以我會建議一個JSON文件,它包含在客戶端的腳本標記。 JSON很容易在服務器端生成,讀取和操作(例如:json_encodejson_decode in php)。

它應該是一個靜態的js文件,因爲它至少會強調服務器。此外,Gzip壓縮可以幫助保持較低的帶寬成本。

+0

謝謝你的意見。 – edigu 2010-07-08 17:21:08

+0

我很高興我可以幫助:) – galambalazs 2010-07-08 17:29:45