分析AngularJS中包含数据绑定的字符串

Parse a string that contains data bindings in AngularJS

本文关键字:字符串 数据绑定 包含 AngularJS 分析      更新时间:2023-09-26

我有一个后端呈现模板,它返回一个JSON对象,该对象包含一个需要一些动态数据绑定的字符串,例如。。。

sampleLogic = {
  "1": "Sample static text and some {{ dynamic_text }}." 
}

默认情况下,字符串是转义的,在angular中转换dynamic_text以绑定到$scope.dynamic_text的最佳方式是什么?

JS:

 var sampleLogic = {
    "1": "Sample static text and some {{ dynamic_text }}."
};
function parseMe($scope) {
    $scope.copy = sampleLogic['1'];
    $scope.dynamic_text = "dynamic text woooot";
}

HTML:

<div ng-app>
    <div ng-controller="parseMe">
        <div ng-bind-html-unsafe="copy"></div>
    </div>
</div>

Fiddle:http://jsfiddle.net/RzPM3/

您可以使用$interpolate模块,并像一样轻松实现它

var dynamic_text = {
    'dynamic_text': "dynamic text woooot"
};
$scope.copy = $interpolate(sampleLogic['1'])(dynamic_text);

DEMO