2016-08-12 1 views
0

를 작동하지 않는 경우 경우 지킬에 문 :지킬 문이 나는 다음과 같은 한

{%assign current = page.url | split: '/' %} 
<ul> 
<li> 
    <a href="../product-type/index.html" 
    {% if current == "product-type" %} class="active-circle"{% endif %}> 
    <div class="circle"></div> 
    </a></li> 
</ul> 

업데이트 : 컴파일 된 HTML 파일로 가서 수동으로 "활성 - 원"클래스를 추가하더라도 그 클래스에 대한 CSS는 내 브라우저에 나타나지 않고, 요소를 검사 할 때 그 클래스가없는 링크입니다!

이전에 작동 했었습니다 (div 클래스의 배경색을 "circle"으로 변경하는 CSS가 있습니다). 빌드 대상을 지정된 폴더로 변경 한 후 작업이 중지되었습니다. 나는 {{현재}} 무엇을 확신하고 있는지를 보여주었습니다. 그리고 그것은 제가 실제로 확인하고있는 것입니다. 또한 테스트 "if"문을 다른 곳에 추가하려고 시도했지만 작동하지 않습니다.

if if 문에 문제가 있습니까?! 나는 이것을 몇 시간 동안 꼼짝 않고 바라 보았고 무엇이 잘못되었는지 전혀 모른다!

답변

1

split 액체 필터는 항상 배열을 반환합니다.

시도 :

귀하의 경우
{% assign myArray = "https://stackoverflow.com/a/b/c/" | split: "/" %} 
<p>{{ myArray }}</p>   ---> abc 
<p>{{ myArray | inspect}}</p> ---> ["", "a", "b", "c"] 

, 당신이 :

{% if current.last == "product-type" %} --> true 
:

{% assign current = "/product-type/" | split:"/" %} 
<p>{{current | inspect}}</p>  --> ["", "product-type"] 
<p>{{current.last | inspect}}</p> --> "product-type" 

이제와 비교할 수 있습니다