Markdownテキストの指定方法
Markdownテキストは、ng-includeディレクティブで指定する他にも、以下のような方法があります。
(1)要素を利用する
別ファイルにするほどではない短いテキスト、もしくは、本体テキストとまとめて管理した方が良いテキストであれば、そもそも
<marked> # ui-event [![Build Status](https://travis-ci.org/angular-ui/ui-event.svg?branch=master)](https://travis-ci.org/angular-ui/ui-event) ...中略... Add the specific module to your dependencies: </marked>
(2)スコープ変数経由で取得する
スコープ変数経由でmarked属性に引き渡すこともできます。以下の例では、便宜的にリテラル値としてMarkdownテキストを代入していますが、一般的には$http/$resourceサービスなどを使って、外部サービスからコンテンツを取得することになるでしょう。
<div marked="readme"></div>
angular.module('myApp', ['hc.marked']) .controller('MyController', ['$scope', function($scope) { $scope.readme = '# ui-event [![Build Status](https://travis-ci.org/angular-ui/ui-event.svg?branch=master)](https://travis-ci.org/angular-ui/ui-event) ~'; }]);
(3)JavaScript上で変換する
markedサービスを注入することで、JavaScript上で明示的にテキストを変換することもできます。変換したテキストを更に操作したい場合には便利です。
<!DOCTYPE html> <html ng-app="myApp"> <head> <meta charset="UTF-8" /> <title>AngularJS</title> <script src="bower_components/angular/angular.min.js"></script> <script src="bower_components/marked/marked.min.js"></script> <script src="bower_components/angular-marked/dist/angular-marked.min.js"></script> <script src="bower_components/angular-sanitize/angular-sanitize.min.js"></script> <script src="scripts/marked4.js"></script> </head> <body ng-controller="MyController"> <div ng-bind-html="readme"></div> </body> </html>
angular.module('myApp', ['hc.marked', 'ngSanitize']) .controller('MyController', ['$scope', 'marked', function($scope, marked) { $scope.readme = marked('# ui-event [![Build Status](https://travis-ci.org/angular-ui/ui-event.svg?branch=master)](https://travis-ci.org/angular-ui/ui-event) [![npm version](https://badge.fury.io/js/angular-ui-event.svg)](http://badge.fury.io/js/angular-ui-event) ~'); }]);