[問題] 各位怎麼管理 javascript 和 css assets

看板Ruby作者 (南洋大兜蟲)時間12年前 (2012/09/02 12:45), 編輯推噓1(108)
留言9則, 4人參與, 最新討論串1/1
就依照 RESTful 的設計,例如一個 Post resource 就有 new、edit、show 和 index 四 個 page,如果我對於這四個頁面都有他們各自的 css 和 script,我現在是都寫在 app/assets/javascripts/posts.js.coffee 和 app/assets/stylesheets/posts.css.scss 裡面。 但這樣進入各個 page 常會載入用不到的東西(例如進入 show,會載入 posts.js.coffee 和 posts.css.scss 但只用得到裡面的 1/4 的程式碼和 style)。 但若把 javascript 和 css 又各分成 4 個,這樣會變成 8 個檔案。在進行 assets precompile 之前,我要在 config/environments/production.rb 先定義額外的 assets : config.assets.precompile += %w(posts_new.css posts_edit.css posts_show.css posts_index.css) 這樣會變得很冗長,所以想來此請教前輩們該如何管理這些檔案比較恰當? 把全網站的 javascript 和 css 檔案 precompile 成 1 個檔案是好方法嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.227.149.147

09/02 17:22, , 1F
記得production的時候不是都會precompile成1個
09/02 17:22, 1F

09/02 17:22, , 2F
所以也就沒必要分開action寫了
09/02 17:22, 2F

09/02 18:26, , 3F
那是因為加上了 require_tree 才會這樣
09/02 18:26, 3F

09/02 18:27, , 4F
但這樣的話一樣會跑更多無關緊要的程式碼
09/02 18:27, 4F

09/02 18:28, , 5F
這樣一樣沒解決我問的問題
09/02 18:28, 5F

09/02 20:19, , 6F
編成一個檔案就能省REQUEST數,這會比你少載入東西更有效
09/02 20:19, 6F
我現在就是一個頁面的 css 和 js request 各一個, 只是每頁 request 的 css、js 檔案各有屬於自己的就是了。 所以不會在同一頁下載一個以上的 css 或 js。 這樣仍建議要合併整個網站的 css、js 成為一個檔案嗎? ※ 編輯: tonytonyjan 來自: 61.227.149.147 (09/02 20:29)

09/07 20:53, , 7F
require_tree . #刪掉
09/07 20:53, 7F

09/07 20:53, , 8F
手動把你要用到的給加進去就好,但是沒必要分開action
09/07 20:53, 8F

09/07 20:54, , 9F
善用SCSS的特性,用巢狀的方式替action設計CSS
09/07 20:54, 9F
文章代碼(AID): #1GGkHLLQ (Ruby)
文章代碼(AID): #1GGkHLLQ (Ruby)