Sapui5 同时使用控制器和视图
我正在编写我的第一个SAP应用程序,在阅读了一些教程之后,我明白如果我想让视图做任何事情,我需要一个控制器 当我添加controllerName=“./controller/login”(控制器名为'login.controller.js')时,它不起作用,我已经尝试过这种方法的变体 这些教程让我能够复制使用控制器名称的代码,但它们没有教我如何为自己的控制器代码编写字符串 我该怎么做 到目前为止,控制器代码如下所示:Sapui5 同时使用控制器和视图,sapui5,Sapui5,我正在编写我的第一个SAP应用程序,在阅读了一些教程之后,我明白如果我想让视图做任何事情,我需要一个控制器 当我添加controllerName=“./controller/login”(控制器名为'login.controller.js')时,它不起作用,我已经尝试过这种方法的变体 这些教程让我能够复制使用控制器名称的代码,但它们没有教我如何为自己的控制器代码编写字符串 我该怎么做 到目前为止,控制器代码如下所示: sap.ui.define([ "sap/ui/core/m
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>
我要将.onvisitompage函数添加到控制器中,但首先我想让它正常工作。就像Julian Schmuckli已经说过的那样,您必须在controller.login前面加上名称空间,检查初始化sap ui核心的index.html(见下文)
在这里,您必须使用代替“your.namespace”的字符串,并将其与controller.login组合到your.namespace.controller.login
您必须在视图和控制器文件中执行此操作。您正在执行哪个教程?我没有执行任何教程,我已经完成了一些教程,现在我正在尝试创建自己的应用程序。在使用controller.Login之前,可能您必须提供一个正常的命名空间。相反,尝试将名称空间更改为com.yourapp.controller.Login。
<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>