我正在编写我的第一个SAP应用程序,并且已经看过了一些教程,我知道如果我想让我的视图做任何事情,我需要一个控制器。
当我添加控制器“./controllerName=/controllerName=”(控制器名为“login.controller.js”)时,它不工作,我尝试了它的变体。
这些教程让我复制使用控制器名称的代码,但它们并没有教我如何为自己的控制器代码编写字符串。
我该怎么做呢?
到目前为止,控制器代码看起来像这样:
sap.ui.define([
"sap/ui/core/mvc/Controller"
], function(Controller) {
"use strict";
return Controller.extend("controller.Login", {
// controller logic goes here
});
});视图代码如下所示:
<mvc:View
controllerName="controller.Login"
xmlns="sap.m"
xmlns:form="sap.ui.layout.form"
xmlns:mvc="sap.ui.core.mvc">
<Panel headerText="{/panelHeaderText}" class="sapUiResponsiveMargin" width="auto">
<form:SimpleForm editable="true" layout="ColumnLayout">
<Label text="User Name"/>
<Input value="{/firstName}" valueLiveUpdate="true" width="200px"/>
<Label text="Password"/>
<Input value="{/lastName}" valueLiveUpdate="true" width="200px"/>
<Button text="login" press=".onVisitHomePage"/>
</form:SimpleForm>
</Panel>
</mvc:View>我将把.onVisitHomePage函数添加到控制器中,但首先我想让它正常工作。
发布于 2020-10-30 21:06:35
就像Julian Schmuckli已经说过的,你必须在核心前面加上你的名字空间,检查你的核心,在哪里初始化sap-ui- index.html (如下所示)。
<script src="resources/sap-ui-core.js" id="sap-ui-bootstrap"
data-sap-ui-theme="sap_bluecrystal" data-sap-ui-libs="sap.m"
data-sap-ui-bindingSyntax="complex" data-sap-ui-compatVersion="edge"
data-sap-ui-preload="async" data-sap-ui-async="true"
data-sap-ui-frameOptions="trusted" data-sap-ui-appCacheBuster="./"
data-sap-ui-resourceroots='{
"your.namespace": "./",
"sap.ui.demo.mock": "mockdata"
}'></script>在这里,您必须获取代替"your.namespace“的字符串,并将其与your.namespace.controller.login的controller.login组合在一起。
您必须在视图和控制器文件中执行此操作。
https://stackoverflow.com/questions/64485695
复制相似问题