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

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.

主站蜘蛛池模板: 宁城县| 高尔夫| 灌云县| 江山市| 万荣县| 青龙| 华蓥市| 浮梁县| 长海县| 清河县| 嘉义市| 宜宾县| 遵义县| 周宁县| 基隆市| 莱西市| 湾仔区| 常州市| 陇西县| 内丘县| 辽源市| 平度市| 监利县| 威宁| 扶余县| 正安县| 牟定县| 阿图什市| 北辰区| 红安县| 昆明市| 威宁| 探索| 兴城市| 遂平县| 辉县市| 合水县| 区。| 克拉玛依市| 黑山县| 西吉县|