您好,登錄后才能下訂單哦!
靜態資源訪問
項目開發時,一般都需要在模版里引用靜態資源。
使用 thinkjs 命令創建項目時,會自動創建 www/static 目錄,該目錄下專門用來存放 JS、CSS、圖片等靜態資源。
0x0 聽說new的項目自動就有www/static!?
傳說默認創建的項目結構如下:
|--- development.js //開發環境下的入口文件 |--- nginx.conf //nginx 配置文件 |--- package.json |--- pm2.json //pm2 配置文件 |--- production.js //生產環境下的入口文件 |--- README.md |--- src | |--- bootstrap //啟動自動執行目錄 | | |--- master.js //Master 進程下自動執行 | | |--- worker.js //Worker 進程下自動執行 | |--- config //配置文件目錄 | | |--- adapter.js // adapter 配置文件 | | |--- config.js // 默認配置文件 | | |--- config.production.js //生產環境下的默認配置文件,和 config.js 合并 | | |--- extend.js //extend 配置文件 | | |--- middleware.js //middleware 配置文件 | | |--- router.js //自定義路由配置文件 | |--- controller //控制器目錄 | | |--- base.js | | |--- index.js | |--- service //服務目錄 | | |--- **.js //用戶自己定義的服務 | |--- logic //logic 目錄 | | |--- index.js | |--- model //模型目錄 | | |--- index.js |--- view //模板目錄 | |--- index_index.html |--- www | |--- static //靜態資源目錄 | | |--- css | | |--- img | | |--- js
其中是包含有www/static目錄的,但現在通過thinkjs new出來的項目卻沒有這個目錄,因此還需自行創建:
$ mkdir www && cd www $ mkdir static
0x1 往其中添加文件
$ touch fuck.js && echo 'fuck 高數' > fuck.js
這里本人秉承一貫作風創建一個fuck.js文件,你也可按心情添加其他文件
然后啟動項目并查看相應的頁面 127.0.0.1:8360/fuck.js
如果一切正常的話,會出錯!
0x2 同學,請填寫符合基本法的URL
正確的路徑應該是 127.0.0.1:8360/static/fuck.js
0x3 什么?你不喜歡static這個名字
那么可以通過修改src/config/middleware.js中resource的參數來修改:
修改前:
.... { handle: 'resource', enable: isDev, options: { root: path.join(think.ROOT_PATH, 'www'), publicPath: /^\/(static|favicon\.ico)/ // <-- 此處將修改 } }, ....
修改后:
.... { handle: 'resource', enable: isDev, options: { root: path.join(think.ROOT_PATH, 'www'), publicPath: /^\/(public|favicon\.ico)/ // <-- 此處修改了 } }, ....
還沒完,對應的還得修改www/static為www/public:
修改前
|--- www | |--- static //靜態資源目錄 | | |--- fuck.js
修改后
|--- www | |--- public //靜態資源目錄 | | |--- fuck.js
大功告成,現在訪問127.0.0.1:8360/public/fuck.js,就有了:
0xSegmentFuck 感性認識
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。