cómo añadir una plantilla de html en un div/directiva haga clic con angular js?

tengo esta situación:

<somebutton></somebutton>

app.directive("somebutton", function(){
    return {
        restrict: "E",

        scope: {
          //not sure what i can do here
        },

        template: '<button ng-click="loadTemplate()" type="button">Text</button>',

        link: function(scope, element){
            scope.loadTemplate = function(){

                //TODO: append "home.html" template inside body directive
            }
        }
    }
});

<script type="text/ng-template" id="home.html">
    <div>home</div>
</script>

<div body ></div>

Otra forma de hacerlo podría ser que el botón en html, en lugar de una plantilla de

<button ng-click="loadTemplate()" type="button">Text</button>

entonces tal vez tiene un controlador que tiene el loadTemplate() método que carga la plantilla

pero no estoy seguro de cómo esto se puede hacer.

Confuso? sí 🙂

Alguna idea sobre este tema?

gracias

  • Recientemente he comenzado con Angulares y seguro de hacer las cosas correctamente es confuso para mí … considerar como Angular HTML es considerado como plantilla para el uso de otras herramientas de plantillas con Angular no estoy seguro… esperando algunas respuestas…
InformationsquelleAutor Patrioticcow | 2013-03-14

1 Kommentar

  1. 8

    Echa un vistazo a ngInclude en caso de que se ajusta a sus necesidades. Puede enlazar a una dirección url de plantilla para cambiar dinámicamente la carga de la plantilla.

    Retirar la documentación para un ejemplo, así como este simple plnkr.

    <body>
      <button ng-click="template='home.html'">Home</button>
      <button ng-click="template='home2.html'">Home 2</button>
      <div ng-include src="template"></div>
    </body>
    <script type="text/ng-template" id="home.html">
        <div>loaded home</div>
    </script>
      <script type="text/ng-template" id="home2.html">
        <div>loaded home 2</div>
    </script>

    También nota que la mayoría de las aplicaciones AngularJS es probable utilizando el construido en el enrutamiento para cargar los controladores apropiados y las opiniones basadas en la url. Ver el tutorial y documentación/ejemplo en $ruta para obtener más información.

    • esto va a cambiar las plantillas bien. Estoy buscando para carga/anexar una plantilla a un div/directiva. Mi pregunta podría lanzar a la gente un poco fuera de
    • Ah en ese caso, tal vez el $compilar de la documentación será de ayuda.
    • Para mí que nada ocurra

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea