看板 Ajax 關於我們 聯絡資訊
各位大大好 小弟之前沒用過RequireJS與r.js 現在要maintain別人寫的兩個專案 兩個都用了RequireJS並用r.js壓縮 想要review他的code 發現兩個專案的網頁中 js都只有這行 <script data-main="/assets/javascript/main-built" src="/assets/vendor/requirejs/require.js"></script> 可是main-built.js內全壓縮成了一行 我無法開始review code 研究後發現是他用r.js壓縮過 找到了app.build.js 發現裡面長這樣 ({ baseUrl: ".", name: "main", out: "main-built.js", mainConfigFile: "main.js", preserveLicenseComments: false, paths: { jquery: "../vendor/jquery/jquery", .......... }, shim: { "../vendor/jquery.lazyload/jquery.lazyload.min": ['jquery'], ....... 小弟猜想 原始檔是main.js main-built.js只是壓縮後的結果 於是小弟將這行 data-main="/assets/javascript/main-built" 改成 data-main="/assets/javascript/main 小弟以為r.js只是把原本包好的code全部找出來壓縮 所以使用main-built跟main 除了performance之外 全都一樣 結果 其中一個專案正常運作 另一個專案卻是出現一大堆js讀取問題 想請問為什麼會這樣呢?? 我該從哪裡開始review code呢?? 可以給小弟一個研究方向嗎 謝謝各位大大! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.171.162.110
TonyQ:照理說是要一樣的,但是可能不幸的它沒把 dependency 寫好 12/09 15:10
TonyQ:導致大家讀取的有時間差 12/09 15:10
TonyQ:你應該先找一個 js 出錯的地方,然後去找那個 module 是不是 12/09 15:10
TonyQ:漏了哪個 dependency 所以出現這個 error,然後想辦法補上。 12/09 15:10
TonyQ:前提是真的 main-built.js 是真的由 main.js build 的啦 12/09 15:11
TonyQ:然後你可能要查一下有沒有要另外設 config 的地方 12/09 15:11
TonyQ:像是把build.js 裡面一些 require 相關的 config 寫到main去 12/09 15:11
TonyQ:沒有具體的情況很難判斷就是了 12/09 15:12