2016-04-18 63 views
0

我有一個奇怪的問題使用JADE與服務器端呈現。Jade - 意外的令牌非法包括

SyntaxError: C:\Users\{me}\WebstormProjects\evoliance\views\mixins\widget-container.jade:2 
    1| include ./widget-container-singleton 
> 2| include ./widget-container-tilelist 
    3| include ./widget-container-linelist 
    4| 
    5| mixin widgetContainer(display, type, data) 

我發現,去除包括在小部件的容器的TileList文件也刪除此錯誤:

include ./tilelist/links 

mixin widgetContainer_tileList(type, data) 
    if(type == 'links') 
     +widgetContainer_tileListLinks(data) 

但令人奇怪的是,類似的進口沒有事實原因錯誤:

include ./singleton/descriptors 

mixin widgetContainer_singleton(type, data) 
    if(type == 'descriptors') 
     +widgetContainer_singletonDescriptors(data) 

這裏是針對包括似乎並不成爲問題:

mixin widgetContainer_tileListLinks(data) 
    if(data && data.length > 0) 
     #component-tilelist-links 
      each link in data 
       a.tile-link(href=#{link.url}) #{link.title} 

感謝您的幫助!

回答

1

您試圖在mixin的href屬性中插值,導致錯誤。它應該被分配到屬性link.url

mixin widgetContainer_tileListLinks(data) 
    if(data && data.length > 0) 
     #component-tilelist-links 
      each link in data 
       a.tile-link(href=link.url) #{link.title} 
+0

非常感謝!對於插值*(對於字符串)的使用之間的差異,我仍然不放心。我將期待這個問題。 – OhmWang