2012-09-16 27 views
8

Tôi có trang ngọc bích và điều đầu tiên tôi làm là đặt biến xác định thư mục cơ sở được tất cả các liên kết sử dụng.Jade - thiết lập thư mục cơ sở tùy thuộc vào môi trường

if ! base 
    base = '/klog/' 
    // base = '/website-clear/klog/' 

Đây thực sự là trang github, vì vậy mỗi khi tôi hiển thị trang thành html, tôi phải nhớ thay đổi cơ sở, sau đó thay đổi lại để chỉnh sửa cục bộ.

Phải có cách làm tốt hơn. Hiện tại tôi đang nghĩ đến việc có một tập tin không đúng cách trong bản sao cục bộ, bao gồm cơ sở - nhưng điều đó có thực sự cần thiết không?

Cách tốt nhất để xử lý vấn đề này là gì?

Trả lời

10

Một giải pháp mạnh mẽ hơn sẽ kiểm tra các biến môi trường. Có NODE_ENV=production đặt trên máy chủ sản xuất và không đặt nó trên máy chủ dev.

Sau đó, trong mẫu ngọc bích, hãy hiển thị các đường dẫn khác nhau nếu biến môi trường tồn tại.

if 'production' == process.env.NODE_ENV 
    - base = '/website-clear/klog/' 

hoặc

- base = ('production' == process.env.NODE_ENV ? '/website-clear/klog/' : '/klog'); 
+0

này có vẻ tốt với tôi, cảm ơn! –

+0

Có lẽ tốt hơn để thiết lập một biến trên máy dev, và sau đó sử dụng ... 'base = process.env.klog_base_path? process.env.klog_base_path: "/ klog" ' –

+0

Điều đó thậm chí có thể được đơn giản hóa thành' base = process.env.klog_base_path || "/ klog"; '? –

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