Tko Versions Save

🥊 Technical Knockout – The Monorepo for Knockout.js (4.0+)

v4.0.0-beta1.3

1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/knockout/tko/compare/v4.0.0-alpha3...v4.0.0-beta1.3

v4.0.0-alpha3

6 years ago

From the CHANGELOG:

  • (build) Compiles to dist/ko.js
  • (build) The dist/tko.js (that exported tko) has been deprecated/removed
  • (internal) Add the ES6 LifeCycle class (see tko.lifecycle)
  • (binding handlers) Add new-style ES6 Binding Handler class (see custom-bindings documentation and tko.bind/src/BindingHandler.js), descended from the LifeCycle class
  • (lifecycle) Fix error with event handler type
  • (provider) Add & document the Provider base class
  • (subscribable) Add the once, then, when, yet, and next functions
  • (parser) Fix early-out for logical (&& / ||) operators
  • (binding) ko.applyBindings now returns a Promise that resolves when bindings are completed
  • (attr) Support namespaced attributes with attr binding #27
  • (options) Add the options.Promise, so users can use a their own or a safe Promise variant of A+/Promises (defaults to window.Promise)
  • (attribute-interpolation) Fix interpolation of styles attribute (e.g. style="color: {{color}}") in the AttributeMustacheProvider, by adding attributesBindingMap parameter.

v4.0.0-alpha1

7 years ago

This is the second alpha of TKO.

It incorporates a number of changes, fixes a number of edge cases (particularly with the parser), and incorporates the last pre-release binding plugin, fast-foreach.

  • Fix negation operator (-) application - integers/floats e.g. -1 work, as well as variables -x and expressions -(x + y)
  • Use tko.binding.foreach for the foreach binding (based on brianmhunt/knockout-fast-foreach)
  • Add each as an alias of foreach
  • Parser
    • Correct behaviour with dereferencing members of expressions (e.g. (x || y).z or (abc || {x: null})['x'])
    • Fix canonical (() => ...) lambdas
    • Support C & C++ style comments (knockout/knockout#1524)
    • Fix filter/or ambiguity on pipe |
    • Raise an error with anonymous functions
    • Fix && and || operator precedence
  • Updated Rollup - changes order of compilation, smaller output
  • Fix issue with first rendering of an elseif binding
  • Make the template binding expose a conditional for else-binding
  • Expose ko.dependencyDetection
  • Make sure obj.x uses this of obj where x is a function (e.g. click: model.onClick has this of model)
  • Ensure obj.x only uses obj as this when x is a prototypal method (and not just a value)
  • Honour explicit references to this (as $data)
  • Ensure bindings with multiple filters work as expected
  • If available, use a WeakMap for DOM node data (resolves knockout/knockout#2141)
  • Fix filters not separated by whitespace (e.g. value|filter1|filter2)