当前位置: 首页 > news >正文

ps做图赚钱网站有哪些如何推广外贸型网站

ps做图赚钱网站有哪些,如何推广外贸型网站,极简 主题 css3 wordpress,wordpress模板增加模块模板绑定器 如今页面结构越来越复杂,仅仅依靠foreach已经不足以我们的使用,这个时候我们就需要模板的存在,模板的优点自然很多,首先会让页面整洁,同时修改起来也可以方面的定位,最重要的是ko可以条件式选择…

模板绑定器

      如今页面结构越来越复杂,仅仅依靠foreach已经不足以我们的使用,这个时候我们就需要模板的存在,模板的优点自然很多,首先会让页面整洁,同时修改起来也可以方面的定位,最重要的是ko可以条件式选择模板来呈现数据。下面我们将开始逐一的学习。

 

1.呈现一个简单的模板

常规的js我们需要写上去,如下所示:

复制代码
1  <script type="text/javascript">
2         $(function () {
3             var viewMode = {
4                 datas: ko.observableArray({name:"123",value:123})
5             };
6             ko.applyBindings(viewMode);
7         });
8 </script>
复制代码

 

然后我们在指定我们的模板:

复制代码
1 <script type="text/html" id="data-template" >
2     <div data-bind="text:name" ></div>
3     <div data-bind="text:value" ></div>
4 </script>
复制代码

 

最后我们在页面中使用这个模板:

<div data-bind="template: {name:'data-template',data:datas}" ></div>

 

      其中template就是我们今天的主角,name用来指定使用的模板名字,data是指定用来呈现的数据,然后我们在浏览器中查看。

 

2.利用”foreach”选项呈现模板

      上面的方法只能用来呈现一条数据的,但是大多数实际应用中我们都需要按照一个模板循环呈现数据,那么我们就需要使用foreach选项。

 

首先我们先修改js,改成数组:

复制代码
1 <script type="text/javascript">
2         $(function () {
3             var viewMode = {
4                 datas: ko.observableArray([{ name: "123", value: 123 }, { name: "456", value: 456 }])
5             };
6             ko.applyBindings(viewMode);
7         });
8 </script>
复制代码

然后将上面的data改成foreach就可以,刷新页面,我们就可以看到结果了。

 

3.利用”as”重命名

      这个选项在一般情况下我们不会使用,除非我们需要在模板中使用子模板的时候,这个as选项就非常有用,通过下面的例子我们看出具体的用法在哪:

复制代码
 1 <div data-bind="template: {name:'data-template',foreach:datas,as:'t'}" ></div>2 3 <script type="text/html" id="data-template" >4     <div data-bind="text: name" ></div>5     <div data-bind="template: {name:'value-template',foreach:value}" ></div>6 </script>7 8 <script type="text/html" id="value-template">9     <div data-bind="text:t.name" ></div>
10     <div data-bind="text:$data" ></div>
11 </script>
12 
13     <script type="text/javascript">
14         $(function () {
15             var viewMode = {
16                 datas: ko.observableArray([{ name: "123", value: [1, 2, 3, ] }, { name: "456", value: [4, 5, 6] }])
17             };
18 
19             ko.applyBindings(viewMode);
20         });
21     </script>
复制代码

      我们定义了两个模板,分别为”data-template””value-template”,而”data-template”中又使用了”value-template”模板,”value-template”模板中使用t.name来访问上级的name其中t就是as的作用。

 

4.使用”afterRender”,”afterAdd”和”beforeRemove”事件

      这几个事件就是用来在呈现模板的过程中响应不同的事件,并且还会传递对应的参数。下面我们改变上面的示例,响应afterRender事件,并输出对应的name,首先我们在data-bind中添加afterRender

<div data-bind="template: { name: 'data-template', foreach: datas, as: 't', afterRender: onRender }" ></div>

 

 

然后在js中添加一个函数:

复制代码
 1     <script type="text/javascript">2         $(function () {3             var viewMode = {4                 datas: ko.observableArray([{ name: "123", value: [1, 2, 3, ] }, { name: "456", value: [4, 5, 6] }]),5                 onRender:function(ele,arg){6                     console.log(arg.name);7                 }8             };9 
10             ko.applyBindings(viewMode);
11         });
12     </script>
复制代码

 

 

5.动态选择模板

      我们一开始也说了使用模板的另一个最大的好处就是可以动态的选择呈现的模板,这样对于某些外观差距很大,但是都属于同一个数据的情况下可以利用这个来实现,其实实现起来也很简单,我们只要在指定name的时候指定一个函数就可以,在呈现每个数据的时候会回调这个函数,并把当前的数据作为参数传递进来,然后我们就可以根据数据的具体情况来返回对应的模板名称了,比如下面的示例代码:

复制代码
 1 <div data-bind="template: { name: templateName, foreach: datas}" ></div>2 3 <script type="text/html" id="data-template" >4     <div>A</div>5     <div data-bind="text: name" ></div>6 </script>7 8 <script type="text/html" id="value-template">9     <div>B</div>
10     <div data-bind="text:name" ></div>
11 </script>
12 
13     <script type="text/javascript">
14         $(function () {
15             var viewMode = {
16                 datas: ko.observableArray([{ name: "123", value: [1, 2, 3, ] }, { name: "456", value: [4, 5, 6] }]),
17                 templateName: function (ele) {
18                     if (ele.name == "123") {
19                         return "data-template";
20                     } else {
21                         return "value-template";
22                     }
23                 }
24             };
25 
26             ko.applyBindings(viewMode);
27         });
28     </script>
复制代码

最后我们可以看到会按照我们的条件来输出不同的模板了。

转载于:https://www.cnblogs.com/zxbzl/p/6004250.html

http://www.lbrq.cn/news/2356561.html

相关文章:

  • 网络管理系统平台有哪些福州seo网址优化公司
  • 杭州市建设工程招标app关键词排名优化
  • 做装修效果图的网站有哪些软件下载互联网广告优化
  • 服装 产品展示网站模板网络广告人社区
  • 网站建设技术公司今日头条网站推广
  • 郑州腾石建站东莞疫情最新情况
  • 做网站需要哪些资料做电商需要学哪些基础
  • 梅州正规的免费建站网站如何seo推广
  • 泰州网站制作人工智能培训课程
  • 连云港北京网站建设网站seo关键词优化排名
  • html项目模板下载宁波优化网站排名软件
  • 汽车网站模版360站长工具seo
  • 郑州网站制作公免费域名申请网站
  • 手机做logo用什么网站今日新闻最新
  • 商城网站建设排名企业推广视频
  • 专业网站建设的价格360收录提交入口
  • 安陆市城乡建设局网站100条经典广告语
  • 小程序开发平台花多少钱宁波seo网站排名优化公司
  • 广州做网站最好的公司深圳百度推广联系方式
  • 香港服务器做收费网站要付税吗16种营销模型
  • 中国建设银行官网站贺岁产品北京网站制作公司
  • php网站开发结构青岛网络推广
  • 怎么在一个网站做多个页面快链友情链接平台
  • 网站制作时间代码济南百度
  • 网站主机空间引流app推广软件
  • 东莞网站建设制作服务日本疫情最新数据
  • 网站是软件吗百度账号登录入口
  • 网站的主要栏目及功能网站seo优化服务
  • 网站开发的售后 维保新乡网站推广
  • 百度云服务器做asp网站南宁seo主管
  • AWS IAM 最佳安全实践通用指南
  • uniapp打包成 apk
  • 邮件伪造漏洞
  • 13.计算 Python 字符串的字节大小
  • 【橘子分布式】Thrift RPC(理论篇)
  • GitCode 使用高频问题及解决方案