Tôi đang tìm một động cơ templating. Các yếu tố quan trọng cần cân nhắc khi lựa chọn giữa HAML, SASS/Compass và ERB là gì?Sự khác biệt chính giữa HAML, SASS/Compass và ERB là gì?
10
A
Trả lời
12
Để tóm tắt:
- Haml là một ngôn ngữ đánh dấu
- Sass là một tập hợp các phần mở rộng CSS mà biên dịch vào CSS tiêu chuẩn
- Compass là một wrapper cho Sass xung quanh những thứ như Blueprint
- Erb chỉ đơn giản là HTML với mã Ruby được nhúng.
Nói chung, bạn sẽ xem xét Haml hoặc Erb (mặc dù bạn có thể trộn và kết hợp chúng nếu bạn cần) và CSS hoặc Sass. Compass chỉ đơn giản là một add-on cho Sass.
Tôi khuyên bạn nên bắt đầu với Haml và Sass, vì Haml mất hầu hết các khía cạnh gây phiền nhiễu, dễ bị lỗi của HTML và bỏ chúng. Một khi bạn quen với việc viết trong Haml, sử dụng Erb cảm thấy rất dài dòng.
Đối với CSS, hãy chọn khung (chẳng hạn như Blueprint) và sử dụng nó như để bắt đầu. Bạn luôn có thể thêm Compass vào sau này nếu bạn cảm thấy rằng bạn cần nó.
Các vấn đề liên quan
- 1. Sự khác biệt chính giữa Sinatra và Ramaze là gì?
- 2. Sự khác nhau chính giữa signcode.exe và signtool.exe là gì?
- 3. Sự khác biệt giữa Linux và Unix là gì?
- 4. Sự khác biệt giữa 'độ chính xác' và 'độ chính xác' là gì?
- 5. Sự khác biệt giữa DBI và DBD là gì?
- 6. Sự khác biệt giữa \ r và \ n là gì?
- 7. Sự khác biệt giữa nghỉ và thoát là gì?
- 8. Sự khác biệt giữa chẩn đoán và metaheuristics là gì?
- 9. Sự khác biệt giữa gmake và thực hiện là gì?
- 10. Sự khác biệt giữa '&' và ',' trong Generics Java là gì?
- 11. Sự khác biệt giữa "1.0f" và "1.f" là gì?
- 12. Sự khác biệt giữa chính void và int chính?
- 13. Sự khác biệt giữa JavaBean và POJO là gì?
- 14. Sự khác biệt giữa betweeen% INC và @INC là gì?
- 15. Sự khác biệt giữa INTERSECT và WHERE IN là gì?
- 16. Sự khác biệt giữa RoutedCommand và RoutedUICommand là gì?
- 17. Sự khác biệt giữa NSInvocation và chặn là gì?
- 18. Sự khác biệt giữa fn và fn * là gì?
- 19. Sự khác biệt giữa xtype và bí danh là gì?
- 20. Sự khác biệt giữa build.sbt và build.scala là gì?
- 21. Sự khác biệt giữa localname và qname là gì?
- 22. Sự khác biệt giữa Application.ThreadException và AppDomain.CurrentDomain.UnhandledException là gì?
- 23. Sự khác biệt giữa while (true) và loop là gì?
- 24. Sự khác biệt giữa dealloc và viewdidunload là gì?
- 25. Sự khác biệt giữa uint và System.UInt32 là gì?
- 26. Sự khác biệt giữa heuristic và thuật toán là gì?
- 27. Sự khác biệt giữa decodeURIComponent và decodeURI là gì?
- 28. Sự khác biệt giữa phần .got và .got.plt là gì?
- 29. Sự khác biệt giữa ascx và .cshtml là gì?
- 30. Trong Ember.js, sự khác biệt giữa [] và Ember.A ([]) là gì?