Yes, knockoutjs doesn't have it's own validation rules. Yes knockoutjs doesn't have routing. Yes, knockoutjs doesn't have ajax helpers.
In all these frameworks that add those features, they forgot to copy two that I personally love to death. data bind attributes can contain arbitrary javascript, and creating new types of data bindings is insanely trivial.
sorry for being a n00b but what's the goal of the "class @User" syntax?
I have a cursory knowledge of CS and I'd assume that gets desugared to something like
By default, CS compiles with a closure per file to prevent local variables from leaking to the global scope. So the purpose is to ensure the class is exported. If you put the following in a user.coffee file:
class User
it would compile to:
(function() {
User = (function() {
function User() {}
return User;
})();
}).call(this);
CoffeeScript wraps its output in an anonymous function, so to create a global var you have to explicitly assign it as "window.varname" or, at the top level, "this.varname".
In all these frameworks that add those features, they forgot to copy two that I personally love to death. data bind attributes can contain arbitrary javascript, and creating new types of data bindings is insanely trivial.