程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了$ parse,$ interpolate和$ compile服务之间有什么区别?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决$ parse,$ interpolate和$ compile服务之间有什么区别??

开发过程中遇到$ parse,$ interpolate和$ compile服务之间有什么区别?的问题如何解决?下面主要结合日常开发的经验,给出你关于$ parse,$ interpolate和$ compile服务之间有什么区别?的解决方法建议,希望对你解决$ parse,$ interpolate和$ compile服务之间有什么区别?有所启发或帮助;

这些都是服务的所有例子,援助在AngularJs视图呈现($parse$interpolate可以使用该结构域之外)。为了说明每个服务的作用,让我们以这段HTML为例:

var imgHTML = '<img ng-src="/path/{{name}}.{{extension}}">'

和范围上的值:

$scope.name = 'image';
$scope.extension = 'jpg';

鉴于此标记,这里是每个服务带到表中的内容:

  • $compile-它可以使用整个标记并将其转换为链接功能,当在特定范围内执行该链接功能时,会将一段HTML文本转换为动态的,具有所有指令(在此处ng-src:)对模型更改做出反应的实时DOM 。可以这样调用它:$ compile(imgHTML)($ scope)并获得一个带有所有DOM事件范围的DOM元素。$compile正在利用$interpolate(除其他事项外)完成工作。
  • $interpolate知道如何使用嵌入式插值表达式处理字符串,例如:/path/{{name}}.{{extension}}。换句话说,它可以使用带有插值表达式的字符串,范围并将其转换为结果文本。可以将$interpolation服务视为一种非常简单的基于字符串的模板语言。给定上面的示例,可以使用此服务,例如:$interpolate("/path/{{name}}.{{extension}}")($scopE)获得path/image.jpg字符串作为结果。
  • $parse用于通过$interpolate评估个体式(nameextension对一个范围)。它可用于 读取设置 给定表达式的值。例如,要评估name表达式,可以这样做:$parse('name')($scopE)获得“图像”值。要设置值,可以这样做:$parse('name').assign($scope, 'image2')

所有这些服务正在共同努力,以在AngularJs中提供实时UI。但是它们在不同的级别上运行:

  • $parse仅与单个表达式(nameextension)有关。它是一种读写服务。
  • $interpolate是只读的,并且涉及包含多个表达式(/path/{{name}}.{{extension}})的字符串
  • $compile 是AngularJs机制的核心,可以将HTML字符串(带有指令和插值表达式)转换为实时DOM。

解决方法

是什么区别$parse$interpolate$compile服务?对我来说,他们都做同样的事情:获取模板并将其编译为模板功能。

大佬总结

以上是大佬教程为你收集整理的$ parse,$ interpolate和$ compile服务之间有什么区别?全部内容,希望文章能够帮你解决$ parse,$ interpolate和$ compile服务之间有什么区别?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:$parse