在restrict AngularJS选项中,“M”代表什么?

lsmepo6l  于 2022-10-31  发布在  Angular
关注(0)|答案(2)|浏览(172)

在restrict AngularJS选项中,M代表什么?
AngularJS Developer Guide - Directives文档中,我看到:
restrict选项通常设置为:
...
“C”-仅匹配类名
“M”-仅匹配注解
但是为了避免记住C是用于类而M是用于注解的,我想了解为什么使用M
我在网上没有找到任何关于它的信息。我的猜测是,mc之后的下一个辅音字母,因为c已经被注解掉了,所以使用了m

cunj1qz1

cunj1qz11#

这确实做到了它所说的那样--允许指令与注解匹配。
因此:

  1. directive('yourDirective', function() {
  2. return {
  3. restrict: 'M',
  4. template: '<span>Something in here</span>'
  5. };
  6. });

可以这样使用:

  1. <!-- directive: your-directive -->
lymgl2op

lymgl2op2#

AngularJS支持注解指令,但最好不要使用它们。
从文档:

最佳实践:首选通过标记名和属性使用指令,而不是注解和类名。这样做通常可以更容易地确定给定元素匹配哪些指令。**最佳实践:**注解指令通常用于DOM API限制创建跨越多个元素的指令的地方(例如,在元素内部)。AngularJS 1.2引入了ng-repeat-startng-repeat-end,作为解决此问题的更好方案。鼓励开发人员尽可能使用此方法,而不是自定义注解指令。

如需详细信息,请参阅

  • AngularJS开发人员指南-指令类型
  • AngularJS综合指令API参考-restrict

相关问题