首頁  >  問答  >  主體

php - Laravel 裡的mix方法和asset方法有啥差別?

剛接觸laravel,在引用資源時,看到有asset方法和mix方法,回傳的都是同一個目錄,想問下這兩有啥差別?

巴扎黑巴扎黑2731 天前396

全部回覆(1)我來回復

  • 漂亮男人

    漂亮男人2017-05-16 13:11:08

    laravel自帶了laravel-mix,用於對js、css、圖片等靜態資源進行打包。產生的文件的命名會是:app.asjduiik2l1323879dasfydua23.js, 即js原文件名+hash+.js后缀,因为中间的那个hash是随时会变化的,所以在页面引入js文件的时候,就不能写死文件的路径,而是使用mix('app.js'),此时laravel会自动去匹配当前的app.js对应哪个app+hash+.js的文件(项目public目录下会有一个mix-manifest.json, 這裡面保存了兩者的對應關係,每次打包靜態資源的時候都會更新該文件)。

    而有些時候我們並不希望靜態資源的名稱中被加上hash值(大部分情況是獨自引入的非nodejs模組的第三方函式庫),這個時候就可以直接使用asset方法,它就是直接簡單粗暴地找你給它名稱的文件咯。

    回覆
    0
  • 取消回覆