官术网_书友最值得收藏!

Summary

In this chapter, you have learned the basics of the Knockout library. We have created a simple form to add products to our catalog. You have also learned how to manage observable collections and display them in a table. Finally, we have developed the search functionality using computed observables.

You have learned three important Knockout concepts:

  • View-model: This holds the data that represents the state of the view. It is a pure JavaScript object.
  • Models: This contains data from the business domain.
  • Views: This displays the data we store in the view-model in a given instant of time.

To build reactive UIs, the Knockout library provides us with some important methods:

  • ko.observable: This is used to manage variables.
  • ko.observableArray: This is used to manage arrays.
  • ko.computed: They respond to changes from observables that are inside them.

To iterate over the elements of an array, we use the foreach binding. When we use the foreach binding, we create a new context. This context is relative to each item. If we want to access out of this context we should use the $parent object.

When we want to create a new context relative to a variable, we can attach the with binding to any DOM element.

We use the click binding to attach the click event to an element. Click on event functions to always get the context as the first parameter.

To get values from a variable that we are not sure is an observable, we can use the ko.unwrap function.

We can use the ko.utils.arrayFilter function to filter collections.

In the next chapter, we are going to use templates to keep our code maintainable and clean. Template engines help us to keep our code arranged and allow us to update views in an easy way.

There is a copy of the code developed in this chapter at:

https://github.com/jorgeferrando/knockout-cart/archive/chapter1.zip.

主站蜘蛛池模板: 吉木乃县| 黎城县| 广水市| 玛曲县| 江华| 察哈| 寿宁县| 恩施市| 越西县| 察哈| 黄山市| 永胜县| 湛江市| 额敏县| 杭锦旗| 辽宁省| 大连市| 应用必备| 淳安县| 修水县| 合山市| 嘉义市| 乾安县| 洞头县| 乾安县| 冀州市| 平阳县| 乐至县| 延川县| 阿拉善盟| 昆明市| 定西市| 固阳县| 岚皋县| 乐昌市| 大余县| 凤翔县| 无为县| 商丘市| 田林县| 灌阳县|