Vue2:道具集并可以动态更新,但模板不可以吗?

时间:2018-06-23 12:44:19

标签: javascript vue.js vuejs2 vue-component

我是Vue的新手。我仍在学习,所以S.O.社区确实加快了这一步。

在弄清一些核心基础知识和一些更高级的内容之后(例如,通过多个嵌套组件从子级传播数据,这是v模型无法完成的),我开始制作更复杂的组件。

我现在遇到了一个错误。它在2种情况下发生,但我不明白为什么。 Vue检查器显示正在动态更新的数据。模板和/或计算值只是不更新​​,我不知道为什么。

我花了两个小时试图将其修剪成一个较小的MWE,但我无法在没有降低复杂性的情况下重现该错误(我认为这与Vue不喜欢依赖于通过多个组件传递数据的组件有关)

** M.W.E. **

由于组件很多,我通过代码沙箱提供MWE:

https://codesandbox.io/s/mqoy658v9x

可以看到它是一个相当简单的表

enter image description here

组件说明

  • DataTable:呈现表格的主要组件
  • DataTableCaptionSort:显示有关数据排序方式的列表
  • DataTableCell:表格中的单元格
  • DataTableFilter:过滤器...
  • DataTableHeader:组件在字段上的映射
  • DataTableHeaderCell:标头单元格-如果已排序,则应在其旁边显示图标
  • DataTableRow:每个记录的字段上的组件映射

DataTable组件需要一个类似于数据库的对象,即每个键是一条记录的标识符,而其值是一条记录。 每个记录都是一个对象,其中键是数据的字段。

**错误**

该错误-如标题中所述-是上面提到的两个组件具有正确动态动态更改的数据,但模板或计算值却没有。

问题组件是DataTableHeaderCell和DataTableCaptionSort。 如您所见,单击标题会切换排序(通过一个升序,降序,未排序的循环)。根据排序的值,标题单元格应显示向上箭头或向下箭头。同样,标题应为显示音序顺序的列表,例如x(上)y(下)

都不是。

有人可以帮我弄清楚我在做什么错吗?

0 个答案:

没有答案