保持格式不被从Firebase中的Angular中的JSON中剥离

时间:2015-02-24 20:44:40

标签: javascript json angularjs angularjs-ng-repeat firebase

我有一个应用程序连接到Firebase并使用ng-repeat显示,请参阅下面的代码。连接工作和显示,但描述项具有\ n内联来创建单独的段落,遗憾的是,这些段落被删除,段落简单打印到页面作为一个大段落。我目前正在使用Angular 1.3.8。我已经尝试过ngSanitize,它要么不工作,要么我使用不正确。任何帮助是极大的赞赏。谢谢。

<div>
    <tr ng-repeat="m in members | orderBy:'company' | filter:query">
        <td style="width:250px"><b>{{ m.company }}</b>
            <br>{{ m.address }}
            <br>{{ m.address2 }}
            <br><a href="{{ m.url }}" target="_blank">{{ m.url }}</a>
            <br>
            <br>{{ m.name }}
            <br><em>{{ m.title }}</em>
            <br>{{ m.phone }}
            <br><a mailto="{{ m.email }}">{{ m.email }}</a>
            <br>
            <br>
        </td>
        <td>{{ m.description }}</td>
    </tr>
</div>

2 个答案:

答案 0 :(得分:3)

HTML在格式化时会忽略换行符。您需要使用<br>元素替换换行符,或者将white-space设置为CSS中的prepre-wrappre-line

尝试编辑描述部分,如下所示:

HTML:

<td class="description">{{ m.description }}</td>

CSS:

.description {
  white-space: pre-line;
}

这将保留HTML格式的m.description中的任何换行符。

答案 1 :(得分:0)

你可以简单地删除额外的字符,让我们在你的HTML中调用它:

{{ trim(m.description) }}

代码:

$scope.trim = function(text) {
  return text.replace(/\n/g, ' ');
};