AngularJS Richtlinie zu analysieren und ersetzen Sie das custom-element Inhalt

Ich würde gerne eine einfache markdown-Richtlinie akzeptiert, dass einige Inhalte innerhalb des Elements, analysiert es und ersetzt es durch html.

So:

<markdown>#Heading</markdown>

oder diese (dem $scope.Rubrik = '#Position';)

<markdown>{{heading}}</markdown>

Wird dies:

<h1>Heading</h1>

Meine Richtlinie bisher (natürlich nicht vollständig!):

.directive('markdown', function () {
    return {
        restrict: 'E',
        replace: true,
        link: function ($scope, $element, $attrs) {
            //Grab contents
                var contents = /* How do I do this? */

                var newContents = Markdowner.transform(contents);

                //Replace <markdown> element with newContents
                /* How do I do this? */
        }
    }
})

Ich bin mir nicht sicher, wie Sie greifen die Inhalte der Richtlinie? Würde ich brauchen, um es zu kompilieren?!

Parsen von Markdown ist nur ein Beispiel

Wie wäre ng-transclude? (docs.angularjs.org/api/ng.directive:ngTransclude)
Können Sie transclude ohne Vorlage?
Nein, Sie müssen mindestens ein inline one (ich denke, dies sollte es tun template: '<h1 ng-transclude></h1>')
Transclude klingt wie das, was ich bin nach, aber kann nicht scheinen, um es zu arbeiten. Könntest du eine Antwort und "fill in the blanks" in die oben genannte Frage?? Dank
Der Grund, warum Sie dies tun, ist, weil Sie wollen, um markdown-zusammen mit anderen benutzerdefinierten Elemente? Ich bin auch versucht, etwas ähnliches, wo brauche ich, um radio-button-Steuerelement und das Textfeld zusammen mit dem Inhalt. Ich denke, zu Folgen, die ähnliche Struktur. ist es empfehlenswert?

InformationsquelleAutor Greg | 2014-01-06

Schreibe einen Kommentar