使用Jade输出HTML(在ng-repeat内)

时间:2016-05-03 12:09:55

标签: javascript angularjs node.js pug

我有app控制器文件,从数据库中获取有关过程的信息,其中一条信息是关于该过程的文档。

我面临的问题是,如果文档中有HTML,JADE将无法渲染它只使用html实体!

现在我知道!{VAR}p=!{VAR},但当我这样做时,我得到:

Cannot read property 'Doc' of undefined

获取信息的代码片段:

angular.module('app')
.controller('APIHelpCtrl', function ($scope, $location, $routeParams, $q, FormSvc, ApplicationSvc) {

    FormSvc.setOptions($scope)
    $scope.results = []

$scope.fetch=function(searchTerm) {
    $scope.results.length = 0
    searchTerm = searchTerm || '';
    return $scope.fetch({
        fetchAPI:'FETCHAPI='+searchTerm,
        multiRow:true,
        fetchTarget:'helpProcs',
        notLoggedIn:true
    })
}

$scope.pushResults=function(DescOnly){
    if (DescOnly == false) {
        $scope.results.push({name:buildObject.proccessName,Doc:buildObject.Doc,params:ar})
    }
}

来自JADE文件的片段(我无法弄清楚的部分)

div.results(ng-show="results.length > 0")
    h3 API Help
    .table-responsive
        table.table.table-striped
            thead
                tr
                    th Procedure
                    th.hideOnPrint  
            tbody
                tr(ng-repeat='proc in results')
                    td.printView 
                        p(ng-click='viewProcedure(proc.name)') {{ proc.name }}
                        p.helpDocumentation !{proc.Doc}
像我之前提到的那样!{proc.Doc}导致无法读取属性错误 - 但是如果我也改变它{{proc.Doc}}它可以完全正确地读取它(只是没有渲染HTML)

1 个答案:

答案 0 :(得分:0)

解决了它

使用ng-bind-html并清理了html