Underscore 使用02|学习笔记

简介: 快速学习 Underscore 使用02

开发者学堂课程【Node.js 入门与实战:Underscore 使用02】学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/588/detail/8286


Underscore使用02

 

目录:

一、Template简介

二、应用

 

一、Template简介

将JavaScnpt模板编译为可以用于面呈现的函数,对于通过JSON数据源生成复杂的HTML并呈现出来的操作非常有用。

模板函数可使用<%=...%>插入变量也可以用<%-%>执行任意的JavaScript代码,如果您希望插入一个值并让其进行HTML转义请使用<%=...%>。

当你要给模板函数赋值的时候,可以传一个含有与模板对应属性的data对象。

如果您要写一个一次性的,您可以传对象data作为第二个参数给模板 template 来直接呈现,这样页面会立即呈现而不是返回一个模板函数参数settings是一个哈希表包含任何可以覆盖的设置_.templateSettings.

它有两个字符串(templateString,[settings]),这个字符串中包含了模板的语法,它可以编译返回一个函数,对模板语法进行替换,生成替换后的结果。

 

二、范例:观察传统回收

var compiled = template_(hello:<%=     name %");compiled({name:moe})

=>“hello : moe”

var template = _.template(”<b><%- value %></b>");

template ({value:<script>});

=>“<b>&lt;script>;</b>"

// demo2:

var_ = require(Underscore);

//声明了一段代码模板代码的HTML文档

var html = <h2><%= name %></h2>";

// teplate ()函数的返回依然是一个函数

Var fn = _.template(html);

// 调用 template()返回的这个函数 fn

//fn 接受一个数据对象,并用该数据对象,将html中的模板内容替换,生成最终的HTML代码。

var html = fn({name:“达达”}); 

console.log(htm1);

console.log(fn.toString());

function (data){

 return render.call(this,data,_);

 }

fn动态生成的函数的源代码,需要去找,找到源代码就能知道render函数内部。

相关文章
|
2月前
|
JavaScript 前端开发
|
缓存 监控 JavaScript
面试题-TS(八):什么是装饰器(decorators)?如何在 TypeScript 中使用它们?
在TypeScript中,装饰器(`Decorators`)是一种用于增强代码功能的特殊类型声明。装饰器提供了一种在类、方法、属性等代码元素上注释或修改的方式,使得我们可以通过装饰器来扩展、修改或监视代码的行为。通过使用装饰器,我们可以在不修改原始代码的情况下,给代码添加新的功能,提高代码的可维护性和灵活性。
|
JavaScript 前端开发 开发者
|
Rust 前端开发 JavaScript
前端AST详解,手写babel插件(一)
前端AST详解,手写babel插件
253 0
前端AST详解,手写babel插件(一)
|
设计模式 自然语言处理 JavaScript
前端AST详解,手写babel插件(二)
前端AST详解,手写babel插件
333 0
前端AST详解,手写babel插件(二)
|
JavaScript C++
lodash和underscore:js实用工具库
lodash和underscore:js实用工具库
163 0
lodash和underscore:js实用工具库
|
前端开发 JavaScript
JavaScript专题之跟着underscore学防抖
JavaScript 专题系列第一篇,讲解防抖,带你从零实现一个 underscore 的 debounce 函数
181 0
JavaScript专题之跟着underscore学防抖
|
JavaScript 前端开发 区块链
Vue源码之mustache模板引擎(二) 手写实现mustache
Vue源码之mustache模板引擎(二) 手写实现mustache
115 0
|
移动开发 JavaScript 前端开发
underscore 系列之如何写自己的 underscore
underscore系列第一篇,讲解 underscore 的代码组织方式
125 0
underscore 系列之如何写自己的 underscore
|
JavaScript 前端开发
underscore 系列之实现一个模板引擎(上)
underscore 提供了模板引擎的功能
209 0
underscore 系列之实现一个模板引擎(上)