angular,ngDialog 插件如何调用动态生成的模板。

2015-04-16 08:44:25 +08:00
 sunhk25
哪位用过 ngDialog 插件,想通过 ng-template 来弹出模板内容
动态生成的模板,通过ID无法取得template。
静态直接指定的话,没有问题,通过 model 动态设定 ID 的话,怎么弹出页面本身??
在线 demo》》 http://jsfiddle.net/akgdxhd0/24/
2867 次点击
所在节点    问与答
7 条回复
hahastudio
2015-04-16 10:00:11 +08:00
直接把 template string 传过去?
https://github.com/likeastore/ngDialog#plain-boolean
lingyired
2015-04-16 10:02:52 +08:00
模板本身就是用来动态生成 DOM 的,当你需要动态生成模板的时候,就需要考量你们的设计了- -

关于你这个问题,问题出在 $templateCache 上面(自行谷歌这个)。
sunhk25
2015-04-16 10:16:33 +08:00
@hahastudio
跟我最开始想的一样,但是模板中也有一堆ng绑定,所以如果能调用动态生成的模板最理想。。
livelazily
2015-04-16 13:19:22 +08:00
看了下源代码: https://github.com/likeastore/ngDialog/blob/master/js/ngDialog.js#L420
插件应该支持 templateUrl 选项
用法应该和 directive 里的差不多:
https://docs.angularjs.org/api/ng/service/$compile#-templateurl-
sunhk25
2015-04-16 14:53:39 +08:00
@lingyired
谢谢,templateCache确实是解决这个问题的。。。
但是不知道我的解决方案里,$rootScope的使用方法时候合适
livelazily
2015-04-16 20:13:08 +08:00
@sunhk25 rootScope 不应该用在这里,应该把外部的$scope 通过 options 里的 scope 传入 ngDialog ,再从 ngDialog 的 controller 里通过 $scope.$parent 获取
sunhk25
2015-04-17 13:53:23 +08:00
@livelazily
谢谢指教,已经改正

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/184033

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX