AngularJS inclut


Avec AngularJS, vous pouvez inclure du HTML à partir d'un fichier externe.


AngularJS inclut

Avec AngularJS, vous pouvez inclure du contenu HTML à l'aide de la directive ng-include :

Exemple

<body ng-app="">

<div ng-include="'myFile.htm'"></div>

</body>

Inclure le code AngularJS

Les fichiers HTML que vous incluez avec la directive ng-include peuvent également contenir du code AngularJS :

maTable.htm :

<table>
  <tr ng-repeat="x in names">
    <td>{{ x.Name }}</td>
    <td>{{ x.Country }}</td>
  </tr>
</table>

Incluez le fichier "myTable.htm" dans votre page Web, et tout le code AngularJS sera exécuté, même le code à l'intérieur du fichier inclus :

Exemple

<body>

<div ng-app="myApp" ng-controller="customersCtrl">
  <div ng-include="'myTable.htm'"></div>
</div>

<script>
var app = angular.module('myApp', []);
app.controller('customersCtrl', function($scope, $http) {
  $http.get("customers.php").then(function (response) {
    $scope.names = response.data.records;
  });
});
</script>


Inclure les domaines croisés

Par défaut, la directive ng-include ne vous permet pas d'inclure des fichiers d'autres domaines.

Pour inclure des fichiers d'un autre domaine, vous pouvez ajouter une liste blanche de fichiers légaux et/ou de domaines dans la fonction de configuration de votre application :

Exemple:

<body ng-app="myApp">

<div ng-include="'https://tryit.w3schools.com/angular_include.php'"></div>

<script>
var app = angular.module('myApp', [])
app.config(function($sceDelegateProvider) {
  $sceDelegateProvider.resourceUrlWhitelist([
    'https://tryit.w3schools.com/**'
  ]);
});
</script>

</body>

Assurez-vous que le serveur sur la destination autorise l'accès aux fichiers entre domaines.