我正在使用"laravel-mix": "^0.10.0"
,因为更高的版本(例如"laravel-mix": "^2.0"
)存在更多的问题(我可能会提出其他问题)。
在我的本地计算机上,mix.version();
功能对于JS和SASS都可以正常工作(无论我运行npm run production
还是npm run watch
)。
mix-manifest.json
文件已使用"/css/app.eebc014f141ca31528c7.css"
和"/js/common.d781da695b3fb8b3765c.js"
之类的路径更新。
版本化的JS和CSS文件存在于适当的公用文件夹中。
但是当我在生产服务器上运行相同的npm run production
命令时,只有JS文件被版本控制并出现在/mix-manifest.json
中。
SCSS文件无需进行版本控制即可编译成CSS。
我该如何解决?
答案 0 :(得分:1)
尽管我不清楚问题的答案,但我能够从"laravel-mix": "^0.10.0"
升级到"laravel-mix": "^2.0"
,并且(另外,不在此问题范围内)将处理以下事实: Uglify选项(例如drop_console
/ clearConsole
)似乎已被破坏。
不过,版本控制似乎适用于JS和SASS / SCSS。
我注意到mix-manifest.json
使用一种新的查询字符串方法(例如"/css/app.css?id=89fc79b46cdbfdc944d4"
)而不是更改文件名。