如何使用 Angular 作为模板引擎
How to use Angular as a template engine
我想使用Angular作为模板引擎,然后我想将生成的HTML代码提供给另一个库。
我有一个模板文件模板.html:
<div><h1><span data-ng-show="details.rs">{{details.rs}}</span></h1></div>
我想使用 Angular 根据我的作用域生成最终的 HTML。
例如,如果 details.rs=="Hi!
<div><h1><span>Hi !</span></h1></div>
我尝试使用$compile工具,但我只得到原始 HTML。这是一个小样本:
var getTemplate = function (templateName) {
var defer = $q.defer();
if ($templateCache.get(templateName)) {
defer.resolve($templateCache.get(templateName));
} else {
$http.get(templateName, {cache: $templateCache}).then(function (data) {
defer.resolve(data);
});
}
return defer.promise;
};
var prepareTemplate = function (templateName) {
var defer = $q.defer();
getTemplate(templateName).then(function (htmlTemplate) {
defer.resolve($compile(htmlTemplate));
});
return defer.promise;
};
var buildMarkerPopup = function (properties) {
var defer = $q.defer();
prepareTemplate('views/template.html').then(function (template) {
var scope = $scope.$new();
scope.details = properties;
$timeout(function () {
var htmlElement = template(scope);
$log.debug(htmlElement);
defer.resolve(htmlElement);
});
});
return defer.promise;
};
有谁知道我错过了什么?
此致敬意
我认为你需要$interpolate
http://jsfiddle.net/HB7LU/9977/
var exp = $interpolate('<div><h1><span data-ng-show="details.rs">{{details.rs}}</span></h1></div>');
var context = {
details: {
rs: 'Hi!'
}
};
var result = exp(context);
console.log(result)
相关文章:
- 如何使用jQuery验证引擎验证组
- 使用Node.js在应用程序引擎上进行本地单元测试
- 你知道使用javascript游戏引擎的简单方法吗
- MVC:使用Web窗体视图引擎在javascript中迭代Viewbag数组
- 如何使用Plates模板引擎将数据绑定到对象数组内的属性
- 使用ExpressHandlebars视图引擎在Express4.x框架中渲染部分视图
- 2D物理引擎,使用图像模拟重力
- 我正在尝试使用jqueryValidation引擎插件验证注册表单,有些验证无法正常工作
- 使用jQuery自动完成表达式引擎
- 使用Asp.net的国际象棋引擎
- iOS的UIWebView使用的JavaScript引擎的名称是什么?
- 使用 Chakra(JsRT) 引擎,如何使用 JsRuntimeAttributeAllowScriptInterru
- 如果我使用 Jint 引擎在 JavaScript 代码中定义一个 .Net 类会发生什么
- 在 MVC3 Razor 视图引擎中使用 JavaScript 变量
- 使用 SVG 渲染引擎将 svg 转换为 png 时出现异常
- “未捕获的类型错误:无法读取未定义的属性'嵌入'”在 pdfMake pdf 引擎中使用自定义图像时
- 为什么不't javascript引擎同时使用引用计数和标记和清除来进行垃圾收集
- 为什么谷歌应用引擎OAuth2使用Javascript返回无效凭据
- 我应该在我的Javascript游戏引擎中使用DOM片段作为Shadow DOM吗
- 在谷歌应用引擎中使用javascript(.js)