Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
I'm trying to create a custom binding in KnockoutJS using the raty jQuery plugin to do star ratings for movies. The normal implementation for the raty plugin would look like this... $('.raty').raty(); <div class="raty" data-rating="3"></div> and that would give you something like this... <div class="raty" data-rating="3" style="cursor: pointer; width: 100px;"> <img src="/raty/img/star-on.png" alt=
Vue.jsã¯ãã®ã¾ã¾ä½¿ã£ã¦ãããã§ãããèªå(ããã¸ã§ã¯ã)ã«åã£ããã¬ã¼ã ã¯ã¼ã¯ããè¦ã¤ããã®ã«ãåãã¦ãã¾ãã ããã¯ãå¾çºãã¬ã¼ã ã¯ã¼ã¯ã ãããåãã¬ã¼ã ã¯ã¼ã¯ã®ç¹å¾´ãæèããè¨è¨ããªããã¦ããããã§ããä»ã®èåãªãã¬ã¼ã ã¯ã¼ã¯ã¨ã®ç¹å¾´ãæ¯è¼ããææ¸ãããã®ã§ããã¡ãããã§ãã¯ããªããå°å ¥ãæ¤è¨ããã¨ããã¨æãã¾ãã ãã®ããã以ä¸ã¯Vue.jsã®ç´¹ä»ã¨ä»ãã¬ã¼ã ã¯ã¼ã¯(Knockout.js 㨠Angular)ã¸ã®ã¹ãããã¨ãã2ã»ã¯ã·ã§ã³ã«åãã¦ç´¹ä»ãã¦ããããã¨æãã¾ãã JavaScriptãã¬ã¼ã ã¯ã¼ã¯ã®å°å ¥ãè¡ãããããã®é¸æã¯æ éã«ãããããã¨ããç¶æ³ã§ããã°æåã«Vue.jsã試éç³ã¨ãã¦ã¿ã¦ã广çã¨æããããæ©è½ããAngularãKnockout.jsã«æµãã¦ããã¨ããã®ã¯ååããã ã¨æãã¾ãã 2016/06: Vue.jsã®1.xç³»ã«åããã¦è¨è¿°ã»ãµã³ã
ããã«ã¡ã¯ãæä¸ã§ãã ä¸éã¯MH4ã§ãããä»ããå°çé²è¡è»2ã«ã¯ã¾ã£ã¦ã¾ãã ä¼¼ããããªãã®ã ã¨æã£ã¦ã¾ããã¢ã³ãã³ãã£ããã¨ãªãå¢ã§ãããã«ã¡ã¯ã ãã¦ãåã®è¨äºã§ã次åã¯AngularJSã«ã¤ãã¦æ¸ãããã¨æãã¾ããã¨è¨ã£ã¦ãã㦠ä»åã®ãã¼ãã¯Knockoutã§ããAngularã¯ãã®ãã¡æ¸ãããã§ã⦠ä»åã¯å ¥éè¨äºã¨ãã¦ãã©ããã£ã¦ä½¿ãã®ï¼ã£ã¦ã¨ããæ¸ããã¨æãã¾ãã Knockout.jsã®æ¦è¦ããã©ããªæããªã®ãã®ãµã³ãã«ã¯ååã®ç§ã®è¨äºã éå±±ããã®è¨äºãã覧ãã ããã å°å ¥ãä½ãå§ã Knockout.jsã®ã¤ã³ã¹ãã¼ã«ã¯ç°¡åã§ãã http://knockoutjs.com/downloads/index.html ããJSãã¡ã¤ã«ãåå¾ããscriptã¿ã°ã§èªã¿è¾¼ãã°ä½¿ããããã«ãªãã¾ãã Knockoutã®å©ç¨ã¯ 1. ViewModelã使 2. ViewMo
天ä¸ä¸ã¯ã©ã¤ã¢ã³ããµã¤ãJS MV*ãã¬ã¼ã ã¯ã¼ã¯æ¦éä¼ - connpass ã«åå ãã¦ããã®ã§ã¡ã¢ã Chaplin - mizchi Chaplin.jsã®è©± #ten1club // Speaker Deck ä»äºã§ä½¿ã£ã¦ã Chaplin paulmillrä½ã®Backboneæ¡å¼µç³»ã®MVC Railé¢¨ã®æ§æ Chaplinã®è¨è¨ Rails風ã®ã«ã¼ã¿ã¼ ã¤ã³ã¹ã¿ã³ã¹ã®ç®¡çããComposer Controllerã¨å¼·èª¿ãã¦ã¤ã³ã¹ã¿ã³ã¹ã管ç å·®å管çã§ããã®ã§æ©ã éã«ã¤ã³ã¹ã¿ã³ã¹ãå¼ãç¶ãã®ã§æèããªãã¨è¾ã ã¹ãã£ãã©ã¼ã«ãã£ã³ã° paulmillr/scaffolt Generator MV*ã ã¨ããããã¡ã¤ã«ãå¢ãã scaffolt ã¯Chaplinã¨ã¯é¢ä¿ãªã使ãã Brunch ã¦ã§ãã¢ããªã«ç¹åãããã«ãã©ã³ãã¼ CommonJS風ã®å±é npmã§æ¡å¼µåã«å¿ãã
1 pixelï½ãµã¤ãã¼ã¨ã¼ã¸ã§ã³ãå ¬å¼ã¯ãªã¨ã¤ã¿ã¼ãºããã° ãµã¤ãã¼ã¨ã¼ã¸ã§ã³ãã®ã¯ãªã¨ã¤ã¿ã¼ã®åãçµã¿ãç´¹ä»ãããªãã£ã·ã£ã«ããã°ã§ããææ°æè¡ã¸ã®ææ¦ããµã¼ãã¹èªçã®è£è©±ãåå¼·ä¼ãã¤ãã³ãã®ã¬ãã¼ããªã©CAã¯ãªã¨ã¤ã¿ã¼ã®æ å ±ãæºè¼ã§ãã ã¯ããã¾ãã¦ï¼ ã¹ãã対å¿ã¢ã¡ã¼ããã° Webã¢ããªçã®éçºãæ å½ãã¦ããåå·æµ©å¤ªã¨ç³ãã¾ãã knockout.jsãã®æ©è½ã¨ç¹å¾´ããç°¡åã«ãç´¹ä»ã§ããã°ã¨æãã¾ãã knockout.jsï¼knockout.js (http://knockoutjs.com/) knockout.jsã¯MVVMï¼Model-View-ViewModelï¼ãã¿ã¼ã³ã®ãã¬ã¼ã ã¯ã¼ã¯ã§ãã åæ¹åãã¼ã¿ãã¤ã³ãã£ã³ã°ãã¢ã¤ãã ãã³ãã¬ã¼ãçã®æ©è½ããããSilverlightãWPFéçºè ã«ã¯ããªãã¨ã£ã¤ãããããã¬ã¼ã ã¯ã¼ã¯ã ã¨æãã¾ãã Webã¢ããªã§ã¯DOMãå
Additional Options connectClass - specify the class that should be used to indicate a droppable target. The default class is "ko_container". This value can be passed in the binding or configured globally by setting ko.bindingHandlers.sortable.connectClass. allowDrop - specify whether this container should be a target for drops. This can be a static value, observable, or a function that is passed t
æè¿ãKnockout ã¨ããJavascriptãã¬ã¼ã ã¯ã¼ã¯ã«ããã£ã¦ã¾ãã JSã§ã®éçºãã©ã¯ã«ããKnockout Knockoutã¯ä¸è¨ã§è¨ãã°ããHTML(CSS)ã¨Javascriptã«ããéçºã«MVVMã¢ãã«ãé©ç¨ãããããã®ãã¬ã¼ã ã¯ã¼ã¯ã§ãã ãã¬ã¼ã ã¯ã¼ã¯ã¨ãã£ã¦ããéçºè ãå¶ç´ã§ç¸ãä¸ãããããªãã®ã§ã¯ãªããéçºãã¨ã¦ãã©ã¯ã«ãªãã¾ãã ãã¨ãã° Knockout ã§ã¯ãHTMLã®è¦ç´ ã¨ãJavascriptã§æ¸ããã·ã³ãã«ãªãªãã¸ã§ã¯ãã®ããããã£ããå®ç¾©ãã¼ã¹ã§é¢é£ä»ãã¾ãã é¢é£ä»ããããããããã£ãæ´æ°ãããã¨ãHTMLã®è¦ç´ ã䏿¸ãããã¾ãã ããã ãã§ããæ¬¡ã®ãããªã¡ãªãããèãããã¾ãã ãéçºå¹çåä¸ããã¼ã¯ã¢ããã¨ã³ã¸ãã¢ã¨ã¹ã¯ãªããã¨ã³ã¸ãã¢ã®åæ¥ ãä¿å®æ§åä¸ããã¼ã¯ã¢ãã(View)ã®å¤æ´ã«ããã¹ã¯ãªãã(ViewModel)ã¸ã®å½±é¿ãã»ã¨ã
ååã«å¼ãç¶ããåå¼·ä¸ã® Knockout ã®è¨äºã§ãã ä»åã¯ããªãããªUIãæè»½ã«å®è£ ã§ãã jQuery UI ã¨ã®çµã¿åãããæ¤è¨¼ãã¦ã¿ã¾ããã jQuery UI âsortableâ ã¨ã¯ sortable ã¨ã¯ jQuery UI ã«å«ã¾ããæ©è½ã§ããªã¹ãè¦ç´ ãªã©ã®åã¢ã¤ãã ããã©ãã°ï¼ããããã§ä¸¦ã³æ¿ãã§ããããã«ãããã®ã§ãã sortable ã®åãã«ã¤ãã¦ã¯ jQuery UI Demos & Documentation ãè¦ã¦ããã ããã°ãããã¨æãã¾ãã Knockout ã¨çµã¿åããã ãã¢ã¯ãã¡ãã§ãï¼å¥ç»é¢ã§éãã¾ãï¼ JSFIDDLE ã§ãå ¬éãã¾ãã Knockout ã§ jQuery UI ãªã©ã®ãã©ã°ã¤ã³ããã¤ã³ãã§å®è¡ã§ããããã«ãããããã«ã¹ã¿ã ãã¤ã³ãã£ã³ã°ã使ãã¾ãã ä»åã¯ãååããã®ã¾ã¾ãsortableãã¨ããã«ã¹ã¿ã ãã¤ã³ãã£ã³ã°ã
以åããKnockout.js ã«ã¯ Backbone.js ã¿ãããªã«ã¼ãã£ã³ã°æ©è½ãè¶³ããªããã¿ãããªãã¨ãæ¸ãã¾ãããã§ããKnockout.js ã¯ããããã«ã¼ãã£ã³ã°æ©è½ãæ¬ä½ã§æä¾ããæ°ãç¡ãããã ããSammy.js ã nav.js ãä½µç¨ããã°ããããªãã£ã¦ãã¨ã§èªå·±è§£æ±ºã â¦ããããã°è¶³ããªãæ©è½ãã1ã¤ããã¾ãããã¤ãã³ãæ©è½ããã¥ã¼ã¢ãã«éã§ã¡ãã»ã¼ã¸ãããåãããææ®µã欲ãããä¾ãã°ãåã®åé¤è¦æ±ã親ã«ä¼ããããåãæ´æ°ããããã¨ã親ã«ä¼ãããããã¨ããä»ã¾ã§ã³ã¼ã«ããã¯ã親ã®åç §ãæ¸¡ããããã¦ã¾ãããä½åº¦ãClosure Library ã Backbone.js ã®ãããªã¤ãã³ãæ©è½ãããã°ãã£ã¦æã£ããã¨ãã Backbone.js ã®ã¤ãã³ãæ©è½ãã·ã³ãã«ã§æ°ã«å ¥ã£ã¦ãã®ã§ãåèã«ãã¤ã¤ãåå¼·ãå ¼ãã¦å®è£ ãã¦ã¿ã¾ãããã½ã¼ã¹ã³ã¼ã㯠GitHub ã§å ¬éã
åç½®ã Knockout.jsã¨ã¯ï¼ ããããMVVMãã¿ã¼ã³ã¨ã¯ï¼ Knockout.jsã使ãã¨ã©ã®ããã«ã³ã¼ããå¤ãããï¼ ã¡ãªããããã¡ãªãã ãµãã¼ããã©ã¦ã¶ 使ãã©ãã ç§ã®ä¸ã®JavaScriptã®æ´å²ã§ãKnockout.jsï¼ã®ã£ãããã¨ï¼ã¨ã®åºä¼ãã¯jQueryãç¥ã£ãæä»¥æ¥ã®è¡æã§ããã ãã¼ã¸ã®åèªã¿è¾¼ã¿ã§ã¯ãªãJavaScriptã«ããDOMã®ãªããã¼ãé »ç¹ã«è¡ããããªWEBã¢ããªã±ã¼ã·ã§ã³ã使ããå ´åãã¢ããªã±ã¼ã·ã§ã³ã®è¦æ¨¡ã大ãããªãã«ã¤ãHTMLãã¼ã¯ã¢ããã¨JavaScriptã³ã¼ããéæã§çµ¡ã¿åã£ã¦ãã¾ããæ¬¡ç¬¬ã«ã³ã¼ãã®ã¡ã³ããã³ã¹ãæ©è½æ¡å¼µãå°é£ã«ãªã£ã¦ããã¾ãããããªçµé¨ããããã¨ã®ãã人ã¯çµæ§å¤ãã®ã§ã¯ãªãã§ããããã ããã§ç´¹ä»ãããKnockout.jsãã¯ãããªåé¡ãåçã«æ¹åãã¦ãããJavaScriptãã¬ã¼ã ã¯ã¼ã¯ã§ãã æ¬æ¥ãã®ãã
AngularJSãçé ã«KnockoutJSã¨Sencha Ext JSã§ããã¼ã¿ãã¤ã³ãã£ã³ã°ãå®è£ ããã¾ããããã®éããç°¡åãªãµã³ãã«ãä½ããã¨ã§æ¯è¼ãã¾ããJavaScriptãã¬ã¼ã ã¯ã¼ã¯é¸å®ã§åã ã®ç¹å¾´ãä»è ããèãåãã ãã§ãªããå®éã«åãæ©è½ãæ§ã ãªãã¬ã¼ã ã¯ã¼ã¯ã§å®è£ ãã¦ã¿ãã¨ããã®ã¯éè¦ãªãã¨ã¨èãã¾ãã æ¯è¼ããããã°ã©ã ä»å使ããããã°ã©ã ã¯ããã¹ãããã¯ã¹ãäºã¤é ç½®ãããã¹ãããã¯ã¹ã«å ¥åãããå¤ãè¶³ããåè¨ã表示ããã¨ãããã®ãä½ãã¾ãã 仿§ã¯ãããã¹ãããã¯ã¹ã«å ¥åãããå¤ã峿è¨ç®ãçãã表示ãããã¨ãããã¨ã«ãã¾ããç»é¢ã®æ§æã¯ãããã§ã®è©ä¾¡ã¯æå³ã®ãªããã®ã§ãã®ã§ããã ãããªã使ãã¾ããã AngularJSã®å ´å AngularJSã®å ´åã¯ãJavaScriptãä¸è¡ãæ¸ããã«ãã®ä»æ§ãæºãããã¨ãã§ãã¾ããindex.htmlã«æ¬¡ã®è¡ãè¨è¼ã
KnockoutJSã使ã£ãéçºã1å¹´ã»ã©åã«è¡ã£ã¦ãã¾ããã å ã ã¯ãããã¿ã¤ãã³ã°ã ãã«ä½¿ãäºå®ã§ãããã使ãåæãè¯ãã£ãã®ã§ãã®ã¾ã¾æ¬éçºã«åãè¾¼ã¿ã¾ããã æè¿ãå°ãAngularã«ã¤ãã¦ã調æ»ããã¦ããã®ã§ãKnockoutã¨æ¯è¼ã§ããé¨åãæ¸ãã ãã¦ã¿ã¾ããã KnockoutJSã®é·æï¼çæãããã¦AngularJSã¨ã®æ¯è¼ã¨ãªãã¾ãã é·æï¼åæ¹åã®ãã¼ã¿ãã¤ã³ãã£ã³ã° Knockoutã®æå¤§ã®é·æã¯ãééããªãå¼·åãªåæ¹åã®ãã¼ã¿ãã¤ã³ãã£ã³ã°ã¨è¨ãã¾ãã ãã®åãã試ããããã°æ¬å®¶ãµã¤ãã®Exampleå種ã試ãã¨è¯ãããããã¾ããï¼åèURLï¼ã ãããã¯èªåèªèº«ã§ãµã³ãã«ã»ã¢ããªã±ã¼ã·ã§ã³ãä½ãã¨ããã§ãããã ããã«èã«ãªãã¯ãã§ãã DOMã¨JSã®ã¢ãã«ãç´ä»ãã¦ãæ´åæ§ãã¨ãå¦çãå ¨ã¦ãã¬ã¼ã ã¯ã¼ã¯å´ãå¸åãã¦ããã¾ãã JSå´ã®è¨è¿°ãã·ã³ãã«ã«ãªãã®ã§ãã¢
Simplify dynamic JavaScript UIs with the Model-View-View Model (MVVM) pattern Declarative Bindings Easily associate DOM elements with model data using a concise, readable syntax Automatic UI Refresh When your data model's state changes, your UI updates automatically Dependency Tracking Implicitly set up chains of relationships between model data, to transform and combine it Templating Quickly gene
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}