草庐IT

包装设计

全部标签

javascript - backbone, javascript mvc - 使用 javascript 设计 View

我的一些View需要将它们的文本区域转换为富文本编辑器。我使用jwysiwyg作为编辑器。它要求它附加到的元素在编辑器初始化时在页面中,即当我调用$(this.el).wysiwyg()时,this.el已经在文档中。我的大多数View实际上并没有将自己附加到dom-它们的渲染方法只是使用应用程序模板引擎设置它们的元素html内容,例如$(this.el).html(this.template(内容)在实际将这些subview插入页面之后,链上的View/Controller会更上一层楼。同时,当模型发生变化时,View会重新呈现自己。如何确保编辑器在每次渲染时都附加到元素,并且仍然确

javascript - 设计在 DOM 中表示 UI 对象的 JavaScript 类的最佳实践是什么?

我非常熟悉JavaScript和OOP,但对设计用于UI(HTML)编程的JS类非常不熟悉。我四处搜索了一下,但没有发现任何普遍的模式。假设我想动态创建类似面板的对象(类似于MicrosoftWindows面板)。每个对象都需要一个容器、一个可以包含文本标签的标题区域和一个具有单击事件处理程序的关闭按钮。除了DOM表示(HTML)之外,该对象还将具有JavaScript对象表示(变量和方法)。这是我尝试过的一种方法:////Windowclass//varWindow=function(params){this.testMethod=function(){console.log('te

javascript - 处理 API 设计和 OO 糖

入门读物:Prototypesas"classes"OOJS按照上述模式,我创建如下库/APIvarProto={constructor:function(){this.works=true;},method:function(){returnthis.works;}};现在库用户要与我的原型(prototype)(不提供工厂函数)交互,他们必须实例化和初始化对象//instantiatevarp=Object.create(Proto);//initializep.constructor();这是一种强制用户实例化和初始化我的对象的不友好且冗长的方式。我个人使用pd在我所有的应用程序

javascript - Bootstrap Material 设计无法在动态 Angular View 中正常工作

我将material-bootstrap脚本包含在我的Angular项目的index.html中,但它们需要手动重新包含在View中才能工作。这很奇怪,因为对于插入到Angular中的所有其他脚本来说,这不会发生。index.html我还注意到material-bootstrap不能很好地与Grunt和Bower配合使用,并且往往会在构建时自行删除(因此手册包含在页面底部)。这些是Material-boostrap和Angular/Bower/Grunt的已知错误还是我做错了什么?如果您还需要什么,请告诉我!编辑:bower.json中的依赖"dependencies":{"angul

javascript - AngularJS - 包装指令

我似乎对指令中的孤立作用域感到困惑,希望你能帮助我。我试图将一段代码(其中包含一些自定义指令)包装到一个新指令中以减少代码重复。显然,我需要将一些属性(如ng-model)作为参数添加到我的新指令中,以使该指令可重用。ng-model不喜欢表达式(我首先尝试了ng-model="{{myVariableWhichContainsDesiredNgModelString}}"),因此我在这篇文章中结束了:AngularJS-Createadirectivethatusesng-model。虽然接受的答案似乎适用于简单设置,但我从接受的答案中编辑了plunker以测试它是否也适用于嵌套指令

javascript - 如何为 JavaScript 选择 OO 设计模式

我所说的OO是指经典的OO。我一直在定义我的“类”(javascript没有传统类)之间来回切换,使用模块模式提供隐私和使用对象字面量创建“公共(public)静态”集合。当我创建“类”时,我没有指导力来确定要使用的组织类型。好吧,除了我的代码在没有设置任何选项的情况下同时通过了jshint和jslint。我正在处理大约1500行代码,因此在代码变得无法管理并且我不得不废弃它之前我需要一个“指导力量”。我很清楚在JavaScript中编写“类”的不同方式。由AlexMacCaw编写的JavaScriptWeb应用程序教授的内容以及此处列出的多种方法。但是,在应用程序方面,我只是不知道该

javascript - 使用 jquery 用 <span> 包装某些单词

我有以下div:​客户可以在其中编写他们的SQL查询。我试图做的是用span包装客户在点击Space后输入的单词,并根据输入的单词:例子如果客户端输入select,我需要像这样在div中包装这个选择词:SELECTemp_nameCSS.select{color:blue;text-transform:uppercase;}这与jsFiddle所做的非常相似。我怎样才能做到这一点?这是我到目前为止尝试过的:jsFiddle$(function(){$('div').focus();$('div').keyup(function(e){//console.log(e.keyCode);i

javascript - 如何以人类可读的方式格式化 CouchDB 设计文档?

由于views是在CouchDB中使用JSON定义的,因此我很难以人类可读的方式定义它们。拿着这份文件:{"language":"javascript","views":{"by_location":{"map":"function(doc){if(doc.location!=null)emit(doc.location,doc)}"},"by_location_tags":{"map":"function(doc){if(doc.top_tags){for(i=0;i将map函数写成一个长字符串非常丑陋,而且很难发现错误。我想知道在CouchDB中定义View的工作流程是什么?我觉得

javascript - 什么是 Node.JS 的 getHiddenValue 和 setHiddenValue 函数,它们包装了 V8 的 GetPrivate 和 SetPrivate?

由于非常复杂的原因,我正在研究以更好地了解Node.JS的内部结构,并发现了两个用途不明的函数。这些是功能以及如何访问它们。process.binding('util').setHiddenValueprocess.binding('util').getHiddenValue来自theirnativecodedeclarations,很明显它们包装了以下V8函数:v8::Object::SetPrivatev8::Object::GetPrivate我还制作了一个小片段,展示了他们可以做什么。'usestrict';varbinding=process.binding('util');

一文带你通俗理解23种软件设计模式(推荐收藏,适合小白学习,附带C++例程完整源码)

作者:翟天保Steven版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处一、设计模式是什么?    设计模式是为了解决在软件开发过程中遇到的某些问题而形成的思想。同一场景有多种设计模式可以应用,不同的模式有各自的优缺点,开发者可以基于自身需求选择合适的设计模式,去解决相应的工程难题。    良好的软件设计和架构,可以让代码具备良好的可读性、可维护性、可扩展性、可复用性,让整个系统具备较强的鲁棒性和性能,减少屎山代码出现的概率。    想要熟练运用设计模式,提高自己的编程能力和架构能力,只有在自己工作中,结合自身工作内容,多思考多实践。本文只能通过举一些通俗的例子,来