angularJS学习之路(三十)---自定义指令---templateUrl
来源:互联网 发布:阿里大数据面试题 编辑:程序博客网 时间:2024/04/30 05:25
第一种写法:
<!DOCTYPE html><html><head><meta charset="utf-8"><title></title></head><body><div ng-app="myApp"><script type="text/ng-template" id="zippy.html"><div><h3 ng-click="toggleContent()">{{title}}</h3><div ng-show="isContentVisiable" ng-transclude></div></div></script><input type="text" ng-model="model.title" /><br /><input type="text" ng-model="model.content" /><zippy title="{{model.title}}">the content is :{{model.content}}</zippy></div><script type="text/javascript" src="../js/angular.min.js"></script><script type="text/javascript" src="../js/templateUrl.js"></script></body></html>
第二种写法是把html放在单独的html文件里面:
<div><h3 ng-click="toggleContent()">{{title}}</h3><div ng-show="isContentVisiable" ng-transclude></div></div>
var app = angular.module('myApp', []);//app.run(function($templateCache) {//$templateCache.put("zippy.html", "<div><h3 ng-click="toggleContent()">{{title}}</h3><div ng-show="isContentVisiable" ng-transclude></div></div>")//});app.directive('zippy',function ($templateCache) {//console.log($templateCache.get("zippy.html"));return {restrict:'E',transclude:true,scope:{title:'@'},templateUrl:'../node/templateUrl-zippy.html',//template: $templateCache.get("zippy.html"); link: function(scope) {scope.isContentVisiable = false;scope.toggleContent = function() {scope.isContentVisiable = !scope.isContentVisiable;};}}})
不过这里因为js目录是当前的目录,你的html目录肯定在另外一个文件夹里,所以自己记得路径的问题
<!DOCTYPE html><html><head><meta charset="utf-8"><title></title></head><body><div ng-app="myApp"><!-- <script type="text/ng-template" id="zippy.html"><div><h3 ng-click="toggleContent()">{{title}}</h3><div ng-show="isContentVisiable" ng-transclude></div></div></script> --><input type="text" ng-model="model.title" /><br /><input type="text" ng-model="model.content" /><zippy title="{{model.title}}">the content is :{{model.content}}</zippy></div><script type="text/javascript" src="../js/angular.min.js"></script><script type="text/javascript" src="../js/templateUrl.js"></script></body></html>
第三种写法:把模板放在运行块里面
var app = angular.module('myApp', []);app.run(function($templateCache) {$templateCache.put("zippy.html", '<div><h3 ng-click="toggleContent()">{{title}}</h3><div ng-show="isContentVisiable" ng-transclude></div></div>')});app.directive('zippy',function (/*$templateCache*/) {//console.log($templateCache.get("zippy.html"));return {restrict:'E',transclude:true,scope:{title:'@'},templateUrl:'zippy.html',//templateUrl:'../node/templateUrl-zippy.html',//template: $templateCache.get("zippy.html"); link: function(scope) {scope.isContentVisiable = false;scope.toggleContent = function() {scope.isContentVisiable = !scope.isContentVisiable;};}}})
html文件:
<!DOCTYPE html><html><head><meta charset="utf-8"><title></title></head><body><div ng-app="myApp"><!-- <script type="text/ng-template" id="zippy.html"><div><h3 ng-click="toggleContent()">{{title}}</h3><div ng-show="isContentVisiable" ng-transclude></div></div></script> --><input type="text" ng-model="model.title" /><br /><input type="text" ng-model="model.content" /><zippy title="{{model.title}}">the content is :{{model.content}}</zippy></div><script type="text/javascript" src="../js/angular.min.js"></script><script type="text/javascript" src="../js/templateUrl.js"></script></body></html>
建议还是使用第二种方法
0 0
- angularJS学习之路(三十)---自定义指令---templateUrl
- angularJS 自定义指令 属性:templateUrl
- angularJs中自定义指令transclude与templateUrl详解
- angular自定义指令templateUrl
- angularJS学习之路(十七)---自定义指令
- angularJS学习之路(十八)---自定义指令执行过程
- [angular]指令之4templateUrl
- AngularJS学习之directive自定义指令
- angularJS学习之路(六)---指令
- angularJS之自定义指令
- angularJS学习之路(十九)---自定义指令关于独立作用域
- angularJS学习之路(二十)---自定义指令作用域绑定策略问题
- angularJS学习之路(二十)---自定义指令---transclude的作用
- angularJS学习之路(三十)---服务器通信(1)---基本概念
- Angularjs自定义指令之面包屑
- Angularjs自定义指令之复制指令
- angularjs自定义指令(下)
- angularJS自定义指令(一)
- Google地图获取城市名称
- FirstAndroidApp报错~~~
- 最大收益问题
- B-树结构(二)
- iOS-GCD多线程之dispatch_once
- angularJS学习之路(三十)---自定义指令---templateUrl
- valgrind
- 飞花的线代
- 《coredump问题原理探究》Linux x86版7.11节string对象
- swift willset didset get set区别
- IntelliJ IDEA font fix
- Git提交远程分支任务
- hadoop datanode 打不开
- 飞花的鱼塘