當我檢查html頁面源代碼時,HTML標籤和文本內容被壓縮而沒有空白和行,但內聯javascript。如何讓Jade模板自動壓縮內聯javascript?
5
A
回答
4
我不確定它,還沒有測試過,但你可以probalby添加一個過濾器,並利用UglifyJS。例如
var uglyParser = require("uglify-js").parser;
var uglyUgly = require("uglify-js").uglify;
var uglify = function(str) {
var ast = uglyParser.parse(str);
ast = uglyUgly.ast_mangle(ast);
ast = uglyUgly.ast_squeeze(ast);
return uglyUgly.gen_code(ast);
}
說實話,我不知道,所以它作爲一個過濾器處理在何處放置在玉。現在你應該可以堅持在https://github.com/visionmedia/jade/blob/master/lib/filters.js。
在玉的使用將被:
script(type="text/javascript")
:uglify
<Your JavaScript Code>
我又沒有測試它。但我認爲它應該起作用。我會在今天晚些時候測試它。
5
剛發現的東西,在玉v0.30.0對我的作品:
- 重命名您的.js有.uglify擴展文件
在你的玉模板,使用說明:
include name-of-javascript-file.uglify
原因:挖掘Jade源代碼,我發現了一個名爲的文件。在那裏,你會看到對transformers
的依賴。在lib/transformers.js
(變壓器模塊)中,您將看到各種變換實用程序,包括uglify
。顯然,如果您在include
聲明中匹配正確的文件擴展名,Jade將會呼叫這些變換器中的任何一個。
1
根據the docs,您可以使用任何JSTransformer作爲玉石過濾器。所以,你通常會做這種內聯JS:
script.
(function doSomething() { … })();
你應該做這樣的:
script
:uglify-js
(function doSomething() { … })();
+0
完美的作品,謝謝! –
相關問題
- 1. 在Jade中使用內聯模板
- 2. PowerShell自動JavaScript壓縮
- 3. 如何在Jade模板中編寫內聯CSS樣式時使用javascript變量
- 4. 爲jade模板編碼javascript
- 5. 如何壓縮javascript?
- 6. 如何解壓縮壓縮的內核
- 7. 聯合縮小和壓縮CSS/JavaScript的
- 8. Padding Jade模板變量爲內聯函數
- 9. 在Jade文件中渲染內聯Javascript
- 10. Jade內聯條件?
- 11. Jade內聯條件
- 12. 內聯模板
- 13. 如何讓window.onload函數在Jade模板語言中工作
- 14. 如何自動縮小Javascript?
- 15. 用純JavaScript編寫的Jade模板
- 16. 如何在Jade編譯之前在Jade模板中包含Javascript對象
- 17. CompoundJS和Jade模板
- 18. 如何在emacs中打開時自動解壓縮自定義壓縮文件?
- 19. 如何在Web模式下縮進內聯Javascript?
- 20. 如何JADE/PUG模板文件
- 21. 內聯角模板
- 22. 如何在Jade模板中使用Javascript變量?
- 23. 如何在jade模板中進行javascript數學計算?
- 24. 如何編譯內聯HTMLBars模板?
- 25. 如何使內聯使用ERB模板
- 26. 紅移COPY自動壓縮
- 27. 自動解壓縮文件
- 28. 如何讓IIS壓縮.svg文件?
- 29. 如何讓Haskell的Network.Browser做gzip壓縮?
- 30. 如何讓自定義模板光研
我有這個問題也並沒有認爲這是重要的,足以壓縮它手動。醜化JavaScript將更加有用恕我直言。但是我想補充一點,在javascript中不需要分號,並且自動壓縮內聯javascript需要先解析並理解哪些地方需要分號。 – TiansHUo