2013-03-25 18 views

Trả lời

9

Bạn cần AsseticBundle 2.1.2 hoặc mới hơn. Bên cạnh đó, bạn cần phải làm ba việc:

  1. Install tay lái biên dịch
  2. Cấu hình một bộ lọc assetic để biên dịch tay lái mẫu của bạn
  3. Bao gồm các mẫu trong mẫu cành lá của mình.

Cài đặt trình biên dịch

Thực hiện theo các instructions on the handlebars website. Hoặc, ngắn hơn:

npm install handlebars -g 

Cấu hình bộ lọc

Thêm phần này vào tập tin cấu hình của bạn:

assetic: 
    filters: 
     handlebars: 
      apply_to: "\.handlebars$" 

này sẽ cho assetic áp dụng bộ lọc tay lái cho tất cả các tệp có đuôi". handlebars ", có hiệu quả biến chúng thành một mẫu handlebars biên dịch. Bạn có thể điều chỉnh cài đặt cho bất kỳ kết thúc nào bạn thích.

Bạn có thể cần phải cho biết rằng trình biên dịch handlebars của bạn nằm ở đâu nếu nó không ở vị trí mặc định (/ usr/bin/handlebars). Sử dụng cài đặt "bin" của bộ lọc tay lái cho điều đó. Ví dụ, nếu bạn đã cài đặt nó trong một thư mục con của dự án của bạn (bằng cách sử dụng NPM mà không có tùy chọn -g), cấu hình của bạn có thể trông như thế này:

assetic: 
    filters: 
     handlebars: 
      apply_to: "\.handlebars$" 
      bin: node_modules/handlebars/bin/handlebars 

tham khảo trong cành mẫu

Thêm tham chiếu mới vào mẫu cành cây của bạn tương tự như cách bạn sẽ bao gồm tệp javascript:

{% javascripts 
    '@MyBundle/Resources/public/hbs/*.handlebars' 

     output='assets/my-handlebars-templates.js' 
     %} 
    <script type="text/javascript" src="{{ asset_url }}"></script> 
{% endjavascripts %} 

Sau đó, bạn có thể sử dụng mẫu trong dự án của mình. Chúng được lưu trữ trong Handlebars.templates [templatename] với "template-name" là tên tệp của mẫu của bạn, ngoại trừ ".handlebars".

Hy vọng rằng sẽ giúp ...

+0

khá tuyệt vời. Cảm ơn! –

+1

Nếu nút của bạn.js thực thi nằm ở một vị trí khác với '/ usr/bin/node' (ví dụ trong'/usr/local/bin/node' nếu bạn đã cài đặt nó trên Mac OS X thông qua trình cài đặt chính thức), bạn cần thêm 'nút :/path/to/node' đến cấu hình bộ lọc hỗ trợ 'handlebars'. – chiborg

0

Bạn có thể đặt đúng đường dẫn vào tay lái trong thùng. Sau đây làm việc cho tôi.

assetic: 
    filters: 
     handlebars: 
      apply_to: "\.handlebars" 
      bin: /usr/local/bin/handlebars 

Lấy vị trí bên phải của tay lái sử dụng

which handlebars 
Các vấn đề liên quan