gpt4 book ai didi

javascript - 在 AngularJS 中编译文本

转载 作者:行者123 更新时间:2023-11-29 10:44:50 26 4
gpt4 key购买 nike

我有以下模板:

<h1 class="text-center" ng-bind-html="row.text"></h1>

如果我的 row.text 的内容是一个字符串,那么说:

  Hi your name is {{ name }}

它将显示:

  Hi your name is {{ name }}

而不是实际的 {{ name }} 绑定(bind)。

我需要评估或编译这个 row.text 表达式吗?

最佳答案

1:在这个问题上花了一些时间之后,我发现解析一个可能包含 AngularJS 表达式的字符串,一种方法如下。

假设你的 $scope 是:{ "name": "my name"}

你的字符串表达式在变量 v 中:var v = "Hello, {{ name }}"

var exp = $interpolate(v);
var result = exp($scope);

然后您将在结果变量中得到以下字符串:你好,我的名字

然后我会将答案注入(inject)范围变量。

但是,这样做的一个问题是,一旦完成,结果就是一个字符串,因此对作用域中“name”变量的任何更改将不再影响该特定的计算表达式。

引用:AngularJS $interpolate

2:如果数据绑定(bind)仍然很重要,我所做的不是像那样进行间接寻址,而是创建一个自定义模板字符串,例如“你好{{名字}}”

并相应地编译它:

$compile($scope.row.text)($scope)

引用:AngularJS $compile

我在一个指令中都试过了,现在可以了。

关于javascript - 在 AngularJS 中编译文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21848762/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com