rgthree / mooveestar Goto Github PK
View Code? Open in Web Editor NEWMooVeeStar is a MV* Framework built ontop of MooTools
MooVeeStar is a MV* Framework built ontop of MooTools
When binding many things to a single element, it gets very lengthy. Would like a shorthand way of templating.
Example:
<li data-bind="name uuid accent privacy image" data-bind-privacy="data-private class" data-bind-uuid="data-uuid" data-bind-accent="class" data-bind-image="style:background-image" data-action="choose"></li>
Could more easily be written as:
<li data-bind="name uuid:data-uuid accent:class privacy:(data-private class) image:style:background-image" data-action="choose"></li>
Templates can only be added via .scrape()
, which scrapes the current DOM, and directly with .regsiter(htmlString)
. This does not provide an easy way to add templates through template files, etc.
rgthree,
Anyway you can put up some quick docs on the views / templates? An example of a template would be ideal. Or point me to something similar? Thanks!
Older browsers that do not support mouseenter
& mouseleave
natively break if those events are used in MV*.
If a value is bound which is changed on the fly, it should not change the organic value.
Right now, this object:
{ src:'image.jpg' }
Bound to:
<div data-bind="src" data-bind-src="style:background-image title"></div>
Results in:
<div style="background-image:url(image.jpg)" title="url(image.jpg)"></div>
But should be
<div style="background-image:url(image.jpg)" title="image.jpg"></div>
Right now, binding a template means passing an entire object to the bind function. For instance:
<a data-bind="label url" data-bind-url="href"></a>
requires that both label
and url
be passed to bind. However (and more obviously with larger data sets) we may want to simply bind one w/o unbinding the other, say after an async call, etc.
Right now, Collection.remove it will remove all instances of a model passed in, and Collection.move will move the first index of the model passed in.
However, since duplicates can now be added to the model, we may want to manipulate a single instance of a model by its index.
Collection has no way of removing all items, except to pass your models to remove
. However, if you attempt to call collection.remove(collection.getAll())
the iteration only removes half the items since it's modifying the same array.
Note, MooTools Array equivalent is named Array.empty
We can't have table elements like <tr>
, <td>
, etc. used as the root for a template because of the way the templates are stored as DOM markup. Because they are not actually attached to a <table>
correctly, they get destroyed and only their children are returned correctly.
In MooVeeStar, having a template with a single <option>
tag breaks. Likely because option
must have a select
or optgroup
parent (similar to Issue #5 with table elements).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.