代码之家  ›  专栏  ›  技术社区  ›  tarzanbappa

对话框内的sapui5智能表

  •  0
  • tarzanbappa  · 技术社区  · 7 年前

    我有一个sapui5应用程序,它在我的页面中有几个控件。 如桌子、日历等。

    我在OnInit事件中为我的页面创建了一个单独的模型,如下所示

    var viewModel = new JSONModel();
    
                //Prepare Initial Model
                viewModel.setData({
                    LineDetails: [],
                    Calendar: {},
                    PageMode: "add",
                    DateStart: new Date(),
                    DateEnd: new Date(),
                    IsHistoryAvailable: false
                });
               this.getView().setModel(viewModel);
    

    我需要做的是,在这个页面的对话框中包含一个智能表。 单击页面中的按钮后,对话框将打开。 如何将数据绑定到对话框内的智能表?

    我只有将模型绑定到智能表的经验,该智能表在清单或页面中声明默认模型。

    但在这里,我已经在OnInit事件中向页面添加了一个模型。 那么如何绑定数据呢?

    是否有方法将智能表绑定到包含在上述声明模型中的属性。

    属性名称: 智能表模型

    如:

    viewModel.setData({
                        SmartTableModel:[]
                        LineDetails: [],
                        Calendar: {},
                        PageMode: "add",
                        DateStart: new Date(),
                        DateEnd: new Date(),
                        IsHistoryAvailable: false
                    });
    
    1 回复  |  直到 6 年前
        1
  •  0
  •   Nabi    6 年前

    默认情况下,要绑定的数据必须来自默认模型的ODataModel!换句话说:您不能简单地从某个JSONModel绑定数据,也不能将数据绑定到来自命名模型的智能表(即使它是和ODataModel)。

    1. SmartTable只能处理来自ODataModel的数据,因此不能使用JSonModels。
    2. 目前,smarttable只适用于dafault模型(“”),即命名模型不起作用。

    我不敢告诉你,你想要的东西到今天都不管用。您可以使用真实应用程序代码中的mokerserver+注释(不适用于测试)作为解决方案,但我认为我可以避免这种情况。还有一些其他的技巧,你可以从这里开始阅读: SAP UI5 :named json model with smart table

    推荐文章