最近马上要开始一个新项目的研发,作为第一次mvvm应用的尝试,我决定使用knockoutjs框架.作为学习的开始就从官网的Document翻译开始吧,这样会增加印象并加入自己的思考,说是翻译也并不是纯粹的翻译,会加入自己对知识点的思考以及自己的尝试,在系列最后也希望用一个应用案例作为结尾.希望自己能坚持下来并有所收获,理解不对的地方大家也指出来避免我”误入歧途“.也并不会翻译所有的内容,我会根据自己的经验选择最能反映它使用和精髓的部分.当前版本为3.4 好了,闲言少叙,正篇开始. =======…
承接前文,前文书说道了KO框架中如何使用observable的视图模型属性来与UI元素进行绑定并自动进行双向更新的事儿.observable属性除了服务基础数据类型之外,还定义了专门为服务数组类型的observableArray. 如果你想要监测并响应一个object类型的变化,那么你使用observables.如果你想监测并响应一个集合的变化,就使用observableArray.很多场景下你都会用到它,比如你要在UI上展现或者编辑一个列表内容,期中你会控制他们的展现啊,隐藏啊,添加啊,删除之…
书接上回,前面谈到了在视图模型中可以定义普通的observable属性以及observableArray属性实现与UI元素的双向绑定,这一节我们继续探讨第三种可实现绑定的属性类型:computed observables,我称它为计算observable(说实话关于observable怎么翻译我还真拿不准). 要是你在视图对象中已经定义了一个叫firstName的observable属性和一个叫lastName的observable属性,而你想显示这个人的全名那要如何处理呢?这种情况下就到了co…
初学者无需了解这些 ,但是很多高级程序员想知道我们为什么可以保持跟踪这些依赖以及可以正确的更新到UI中.它其实很简单.跟踪算法是这样的: 无论何时你定义了一个computed observable,KO 立即执行它的执行函数来获取初始值. 当执行函数正在运行,KO会在执行函数中所有使用到的observables之间(包括其它的computed observable)建立订阅关系.这个订阅回调必定使执行函数再次运行,循环整个过程回到第一步(释放所有的订阅关系并且不再使用). KO想所有订阅者通知你…
1.Knockout.Js官网学习(简介) 2.Knockout.Js官网学习(监控属性Observables) Knockout.Js官网学习(数组observable) 3.Knockout.Js官网学习(visible绑定) Knockout.Js官网学习(text绑定) Knockout.Js官网学习(html绑定.css绑定) Knockout.Js官网学习(style绑定.attr绑定) 4.Knockout.Js官网学习(click绑定) Knockout.Js官网学习(event…
前言 Android 开发者官网中对systrace(Android System Trace)有专门的介绍,本篇文章作为systrace系列的开头,笔者先不做任何介绍,仅仅翻译一下官网的介绍.在后续的文章中再整理一份学习教程,以及笔者的实践经历.官网中对该工具的介绍文档路径为[https://developer.android.google.cn/studio/command-line/systrace?hl=en#java].或者在进入到官网的首页后,按照Android Developers…
本系列文章主要翻译自RavenDB官方文档,有些地方做了删减,有些内容整合在一起.欢迎有需要的朋友阅读.毕竟还是中文读起来更亲切吗.下面进入正题. 起航 获取RavenDB RavenDB可以通过NuGet获取,也可以直接在RavenDB官网下载压缩包. 首先了解下压缩包中的内容,可以更好的根据需要进行选择. Backup  – 包含用于备份的Raven.Backup工具 Bundles – 包含所有非内置的插件,如Authentication和Encryption. Client – 包含用于…
前言 本文翻译自“为电池寿命做优化”系列文档中的其中一篇,用于介绍如何使用Battery Historian分析电源使用情况. 中国版官网原文地址为:https://developer.android.google.cn/topic/performance/power/battery-historian. 路径为:Android Developers > Docs > 指南 > Best practies > Performance > Optimize for batter…
问题导读: 1.不同的安装方式,卸载方法存在什么区别?2.不同的操作系统,卸载 Cloudera Manager Server and 数据库有什么区别? 重新安装不完整如果你来到这里,因为你的安装没有完成(例如,如果它是由一个虚拟机超时中断),和你想继续安装,然后重新安装,做到以下几点:删除文件和目录: 个人建议:这一步虽然是官网这么做,但是下面命令还是不要执行,因为我们后面还会用到下面命令 /usr/share/cmf/uninstall-cloudera-manager.sh 复制代码 当…
近期在复习之前的笔记,在回想MonkeyRunner时看了看google官网的内容,写得不错.就翻译出来分享下.事实上google官网真是一个学习的好地方. 基础知识 MonkeyRunner工具提供了一个API用于在Android代码之外控制Android设备和模拟器.通过MonkeyRunner.您能够写出一个Python程序去安装一个Android应用程序或測试包.执行它,向它发送模拟击键.截取它的用户界面图片.并将截图存储于工作站上.monkeyrunner工具的主要设计目的是用于測试功…