【问题标题】:SAPUI5: Wizard goToStep() method is not workingSAPUI5:向导 goToStep() 方法不起作用
【发布时间】:2016-12-02 04:32:37
【问题描述】:

我正在为我的公司项目使用 SAPUI5 向导,但由于某种原因它不适合我。

这是我的代码:

var allSteps = oWizardElement.getSteps();
var stepOne = allSteps[0];
var stepTwo = allSteps[1];
var stepThree = allSteps[2];
    if (iActiveStep === 1) {
        oWizardElement.goToStep(stepThree, false);
    }

在我运行代码之后,整个向导都坏了。包括带有第 1 步、第 2 步和第 3 步按钮的标题已关闭... 当我检查错误时,在控制台中显示

/webapp/resources/sap/m/library-preload.json/sap/m/WizardProgressNavigator.js:6 Uncaught TypeError: Cannot read property 'setAttribute' of undefined

有人可以指导我的代码有什么问题吗?

这是我在 SAPUI5 文档中找到的来源:https://sapui5.hana.ondemand.com/docs/api/symbols/sap.m.Wizard.html#getSteps

【问题讨论】:

  • 信息太少了。如果您在 ui5 的调试版本上有完整的堆栈跟踪,这将有所帮助。如果您可以在 jsbin 上创建一个最小的可行示例,那就更好了。顺便说一句,这和stackoverflow.com/questions/38600919/…不是同一个问题吗?
  • @jpenninkhof 抱歉,这很困难,因为它是公司代码。也许你可以让我知道一些可能的错误吗?谢谢!
  • 这就是为什么我提到获得最小可行的东西会很棒。它不需要是你所有的代码,只是不起作用的部分。本质上,您遇到了一个未定义变量的问题,而 ui5 期望它被定义。发生这种情况的原因可能有很多。

标签: javascript sapui5 wizard


【解决方案1】:

正如文档所述,您需要激活该步骤。您应该已经达到“stepThree”,否则 gotostep() 将不起作用。

【讨论】:

  • 对于任何想知道的人。您可以使用setCurrentStep(stepId) 直接移动到您想要的步骤。
【解决方案2】:

请记住,您必须在 onRouteMatched 或 onAfterRendering 函数中编写源代码

然后按照下面的代码。

var oFirstStep= this._wizard.getSteps()[0];

            this._wizard.discardProgress(oFirstStep);

            var oCurrStep = this.getView().byId(this._currentStep);//this._currentStep is step you want to nav to

            this._wizard.setCurrentStep(oCurrStep);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-28
    • 1970-01-01
    • 2018-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多