在脚本中没有被编译

  in script is not getting compiled

我在 AngularJS 中创建了一个应用程序,其中包含一个使用过滤器的 space 选项下拉列表。该应用程序工作正常,但我为 space 设置的   没有被编译。

我的代码如下

JSFiddle

html

<select>
    <option ng-repeat="(key, value) in headers">{{value | space}}
    </option>
</select>

脚本

app.filter('space', function() {
  return function(text) {
       if(_.isUndefined(text.mainId))
       {
           console.log('entered mainId');
           return text.value;
       }
       else
       {
           console.log('entered');
           return '&nbsp;&nbsp;&nbsp;'+text.value;
       }
  };

这样试试return '\u00A0' + text.value;

Javascript不知道你要解析html实体,所以一定要用unicode编码。

工作fiddle

它通过为 &nbsp; 提供 unicode 值来工作。

app.filter('space', function() {
  return function(text) {
       if(_.isUndefined(text.mainId))
       {
           console.log('entered mainId');
           return text.value;
       }
       else
       {
           console.log('entered');
           return '\u00A0\u00A0\u00A0'+text.value;
       }
  };

Answer from here