2016-07-22 35 views
1

我正在使用gulp-htmlmin這是一個圍繞html-minifier的包裝器。 html-minifier無法解析此角碼。由於角度表達式在html-minifier中的分析器錯誤

<div class="col-md-4 text-center"> 
     <span ng-if="pagination.skip + pagination.take < totalCount || pagination.skip > 0"> 
     Viser {{ pagination.skip + 1 }}-{{ totalCount < pagination.skip + pagination.take ? totalCount : pagination.skip + pagination.take }} af {{ totalCount }} linjer 
     </span> 
    </div> 

其導致錯誤的跨度中的文本。

[19:00:34] Error in plugin 'gulp-htmlmin' 
Message: 
    Parse Error: < pagination.skip + pagination.take ? totalCount : pagination.skip + pagination.take }} af {{ totalCount }} linjer" 
     </span> 
    </div> 

    <div class="col-md-4"> 
     <button class="btn btn-primary btn-sm pull-right" data-ng-show="pagination.skip + pagination.take < totalCount" data-ng-click="more()"> 
      Næste <i class="glyphicon glyphicon-chevron-right small"></i> 
     </button> 
    </div> 
</div> 
Details: 
    fileName: C:\os2kitos\b1\kitos.web\src\app\shared\paginationButtons\paginationButtons.view.html 
    domainEmitter: [object Object] 
    domain: [object Object] 
    domainThrown: false 

是否有另一種方法可以在span中編寫文本?

Viser {{ pagination.skip + 1 }}-{{ totalCount < pagination.skip + pagination.take ? totalCount : pagination.skip + pagination.take }} af {{ totalCount }} linjer 

我解決了這個問題,將邏輯移動到@Arun Ghosh建議的控制器。

+1

嘗試'NG-如果= 「(pagination.skip + pagination.take) 0」' – charlietfl

+1

爲什麼你不把邏輯轉移到控制器上?這是更可維護的。 –

+0

@charlietfl它不是ng--如果這就是問題,它是跨度中的文本 –

回答

2

嘗試增加ignoreCustomFragments作爲參數來忽略車把內的表達式:

htmlmin({ 
    ignoreCustomFragments: [ /\{\{[\s\S]*?\}\}/ ] 
})