tuespetre / html-mvc Goto Github PK
View Code? Open in Web Editor NEWA 'polyfill' that activates client-side MVC for your server-rendered MVC application.
Home Page: https://htmlmvc.azurewebsites.net
A 'polyfill' that activates client-side MVC for your server-rendered MVC application.
Home Page: https://htmlmvc.azurewebsites.net
multipart/json
response parsing<a>
<area>
<form>
and friendsIn order to prevent developers from having to pepper their models with countless AnyItems
/ NoItems
attributes and their code with statements to populate them, there should be a replacement solution for bindeach
that, in the spirit of the existing code, gives the 'hidden' attribute special treatment:
bindsome
, which would add the hidden
attribute if the expressed value was either not a collection or was empty, andbindnone
, which would add the hidden
attribute if the expressed value was a non-empty collectionOf course, both would cause the hidden
attribute to be removed in their opposite scenarios.
In addition, there should be an isomorphic bindcount
expression which functions like bindtext
but uses the number of items in the expressed collection, as there will be differences in how various languages express that and once again, developers shouldn't need to waste their time populating simple integer fields any time they want to display a number.
bindcount
bindsome
bindnone
Currently it's using the title attribute from HTMLAnchorElement
and HTMLAreaElement
instances. Need to think about how this should be done with all elements including forms and their submission elements.
application-name
and application-version
Probably just going to hack together some regex/string splitting kind of thing in its place. At least it falls back to normal form submission ;)
application-name
application-version
Also figure out how changes in version could be effected during model negotiation
In order to allow developers to pre-cache views, a specific type of HTML import should be supported.
Developers would want the referenced resources to be highly cacheable, and should use the server-side framework to generate the links and their hrefs.
Conventional overview
Advanced
bindskip
for performanceUsing with other libraries
Adding 'modern' features as progressive enhancements
GET
and POST
requests:2xx
Scan the response for updated metadata and models and perform the document update/add the new history entry; issue a full GET
request for text/html
if missing required model information
3xx:
Let the browser handle the redirect and re-apply these specifications to the resulting response
All others:
text/html
, replace the current document (probably using document.write()
) and add the new history entrymultipart/json
, scan the response for updated metadata and models and perform the document update/add the new history entry; issue a full GET
request for text/html
if missing required model informationGET
request for text/html
pushState
or replaceState
: is there ever a place for replaceState
, especially for POST
forms? Should it be an attribute-based option?This would prevent crawling the tree twice.
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.