Tôi đang sử dụng Twitter Bootstrap trên một dự án tại thời điểm này, bao gồm các tệp LESS và biên dịch với một số mã LESS bổ sung mà chúng tôi đã viết.Thực tiễn không tốt để ghi đè các biến LESS?
Phiên bản mới nhất có nghĩa là chúng ta cần ghi đè lên một số biến Bootstrap LESS. Một tùy chọn ở đây là để duy trì một bản sao sửa đổi của Bootstrap mà chúng tôi vá trên mỗi bản phát hành.
Nhưng tôi lưu ý rằng có thể ghi đè một biến được xác định trong tệp @import
LESS bằng cách khai báo lại biến sau báo cáo nhập.
ví dụ .:
@import "twitter-bootstrap/bootstrap.less";
// Restore base font size to pre 2.1.1 defaults
@baseFontSize: 13px;
// Add some custom LESS code here
là xấu thực hành này? Nó là một tạo tác của cách trình biên dịch LESS hoạt động, hay một phần dự định của nó? Tôi không thể tìm thấy nhiều thông tin về vấn đề này, mặc dù tôi đã tìm thấy các tài liệu tham khảo sau hai:
Bởi vì một lỗi trong trình biên dịch ít, bạn có thể ghi đè giá trị “liên tục” của một biến bằng cách thay đổi nó sau khi nó ban đầu được khai báo.
http://rubysource.com/how-to-customize-twitter-bootstrap%E2%80%99s-design-in-a-rails-app
và
Tùy chỉnh cột và máng xối bằng cách ghi đè ba biến (sau khi nhập grid.less đã được công bố).
Các trang web LESS thân nói rằng biến là 'hằng':
Lưu ý rằng các biến trong vòng chưa thực sự 'hằng' ở chỗ chúng chỉ có thể là được xác định một lần.
Nhưng sau đó tôi thấy các trang web khác sử dụng phương pháp này .. Nó chắc chắn dễ dàng hơn việc duy trì chi nhánh nhà cung cấp và dường như hoạt động tốt với less.js.
Sẽ đánh giá cao bất kỳ suy nghĩ nào về việc đây có phải là điều xấu để làm hay không!
Có một số vé: https://github.com/cloudhead/less.js/issues/297 và https://github.com/cloudhead/less.js/issues/905 –
Cảm ơn, đáng lẽ đã xem xét ở đó - hữu ích. Mặc dù câu hỏi của tôi vẫn đứng vững vì không phải vấn đề nào cũng có bất kỳ giải pháp nào. – sync