我试图了解在webflow中如何使用输入和输出元素。该文档建议流输入/输出映射类似于调用带有签名的方法,但我不了解输入值是通过什么流或返回输出是什么。如何使用这些元素?
我一直在阅读here中找到的文档,但是没有找到可以使用的元素示例。这是文档中的示例。
<flow xmlns="http://www.springframework.org/schema/webflow"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/webflow
http://www.springframework.org/schema/webflow/spring-webflow.xsd">
<input name="hotelId" />
<on-start>
<evaluate expression="bookingService.createBooking(hotelId, currentUser.name)"
result="flowScope.booking" />
</on-start>
<view-state id="enterBookingDetails">
<transition on="submit" to="reviewBooking" />
</view-state>
<view-state id="reviewBooking">
<transition on="confirm" to="bookingConfirmed" />
<transition on="revise" to="enterBookingDetails" />
<transition on="cancel" to="bookingCancelled" />
</view-state>
<end-state id="bookingConfirmed" />
<end-state id="bookingCancelled" />
在此代码中,分配给“ hotelId”的值从何而来?输入是否来自URL?如果是这样,<input/>
行为在子流中是否发生改变?
答案 0 :(得分:1)
在此代码中,如果您调用hotelId
(假设您的流称为“ myFlow”),则会自动从URL映射/myFlow?hotelId=3
,但是您也可以在从另一个流程中调用流程时直接设置输入,即使用:
<subflow-state id="mySubflow" subflow="myFlow">
<input name="hotelId" value="3"/>
</subflow-state>