angular.js - 请问angular中定义directive后,createElement是必须的吗?
伊谢尔伦
伊谢尔伦 2017-05-15 16:57:17
0
5
558

如下代码所示,定义了directive layoutHeader,按照我的理解,直接在html中引用<layout-header></layout-header>就可以了。
想问下,这里的

document.createElement('layout-header'); 有什么作用?是必须的吗?

原代码如下:

angular.module('app').directive('layoutHeader', function () {
  return {
    restrict: 'E',
    scope: {},
    templateUrl: 'components/layout/header.html',
    controller: 'LayoutHeaderCtrl'
  };
});

document.createElement('layout-header');
伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

répondre à tous(5)
滿天的星座

Ceci est uniquement pour le traitement de compatibilité. IE8 ne peut pas reconnaître les éléments personnalisés, mais ceux créés avec js le peuvent.

左手右手慢动作

document.createElementC'est la méthode js fournie par le navigateur. Le DOM peut être généré à l'aide de code.
Vous pouvez simplement le citer directement dans le html, il n'est pas nécessaire de le créer dans le code.

给我你的怀抱

Utilisez simplement <layoutHeader></layoutHeader> directement dans le code html.

仅有的幸福

Est-ce un exemple de code ?

En fait, il s'agit simplement de créer cet élément en js. C'est la même chose que de l'écrire directement en html.

= = En fait, je suis un peu curieux de savoir de quel type de manuel d'introduction il s'agit. .

巴扎黑

Comme Xiaohe l'a dit, c'est fait pour des raisons de compatibilité.
Référence : http://www.oschina.net/translate/angularjs-ie-compatibility?print

如果你必需要用自定义元素标记,然后你必须采取以下步骤以确保IE8及之前版本都能用:

<!doctype html>
<html xmlns:ng="http://angularjs.org" id="ng-app" ng-app="optionalModuleName">
<head>
  <!--[if lte IE 8]>
    <script>
      document.createElement('ng-include');
      document.createElement('ng-pluralize');
      document.createElement('ng-view');
  
      // Optionally these for CSS
      document.createElement('ng:include');
      document.createElement('ng:pluralize');
      document.createElement('ng:view');
    </script>
  <![endif]-->
</head>
<body>
</body>

</html>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal