由于角度表达式,html-minifier中的解析器错误

Mar*_*sen 2 angularjs

我正在使用gulp-htmlmin,这是一个围绕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>
Run Code Online (Sandbox Code Playgroud)

它是跨度中导致错误的文本.

[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
Run Code Online (Sandbox Code Playgroud)

还有另一种方法可以在跨度中写入文本吗?

Viser {{ pagination.skip + 1 }}-{{ totalCount < pagination.skip + pagination.take ? totalCount : pagination.skip + pagination.take }} af {{ totalCount }} linjer
Run Code Online (Sandbox Code Playgroud)

我通过@Arun Ghosh建议将逻辑移动到控制器来解决这个问题.

小智 5

尝试添加ignoreCustomFragments作为参数来忽略把手内的表达式:

htmlmin({
    ignoreCustomFragments: [ /\{\{[\s\S]*?\}\}/ ]
})
Run Code Online (Sandbox Code Playgroud)