Javascript 以指令为内容的Angular JS Bind变量

Javascript 以指令为内容的Angular JS Bind变量,javascript,angularjs,Javascript,Angularjs,在我的应用程序中,我有一个用于记录事件的日志 目前正在使用ng sanatize,如下所示: <div ng-bind-html="{{eventLog}}></div> 找出问题所在,以下是更新的: 而不是这个 Hi There! <complex value='{{$scope.value}}'></complex> 你好! 这样说: Hi There! <complex value='value'></comple

在我的应用程序中,我有一个用于记录事件的日志

目前正在使用ng sanatize,如下所示:

<div ng-bind-html="{{eventLog}}></div>

找出问题所在,以下是更新的:

而不是这个

 Hi There! <complex value='{{$scope.value}}'></complex>
你好!
这样说:

 Hi There! <complex value='value'></complex>
你好! 为什么?? 在angular指令中,当您传递参数时,它将由angular进行解释。您需要像以下值一样传递它=“somethinngangularwillinterpress”

在解释一个值时,他将使用范围服务来查找该值。您不必在html中使用$scope

最后一点:使用{{}是为了生成角度解释代码。在HTML文本元素中,“值”表示文本“值”。{{value}}表示“显示变量“value”的值”


希望它有帮助

尝试传递
而不插入它(也没有范围):

$scope.textVar=“你好!”

请参见此

,因为您可以像这样直接从控制器传递值

$scope.value = { hello: "Hello", world: "World!" };
$scope.textVar = "Hi There! <complex value='{{$scope.value}}'></complex>";

工作

只是为了确定,为什么需要在JS中构建html?我不一定需要在JS中构建html。我在应用程序的另一个地方使用了logEvent指令,并希望重新使用它。如果我试图错误地解决这个问题,我并不反对改变我的方法。那么,你能直接使用指令而不是ng bind html吗?
eventLog = "<logEvent event=\"{{customEvent}}\"></logEvent>"
 Hi There! <complex value='{{$scope.value}}'></complex>
 Hi There! <complex value='value'></complex>
$scope.textVar = "Hi There! <complex value='value'></complex>"
$scope.value = { hello: "Hello", world: "World!" };
$scope.textVar = "Hi There! <complex value='{{$scope.value}}'></complex>";
scope: {
      value: '='
    },