氚云业务规则中有表单生效时和表单实效时两种状态,用后台代码如何实现两种状态

当表单不存在流程时,数据提交保存生效,可以在Submit操作下做业务处理,当存在流程时,在流程结束生效,在结束事件下做业务处理,失效为删除状态,actionName为Remove;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个简单的示例代码,演示如何使用 React Router 和 React 组件来实现页面来回切换,同保持表单的筛选状态: ``` // App.js import React, { useState } from "react"; import { BrowserRouter as Router, Switch, Route, Link, useHistory, useLocation } from "react-router-dom"; function Home() { // 在 Home 组件中保存表单的筛选状态 const [filter, setFilter] = useState(""); const handleFilterChange = (e) => { setFilter(e.target.value); }; return ( <div> <h1>Home</h1> <form> <label> Filter: <input type="text" value={filter} onChange={handleFilterChange} /> </label> </form> <Link to="/about">Go to About</Link> </div> ); } function About() { // 在 About 组件中恢复表单的筛选状态 const location = useLocation(); const history = useHistory(); const [filter, setFilter] = useState(location.state ? location.state.filter : ""); const handleFilterChange = (e) => { setFilter(e.target.value); }; const handleGoBack = () => { history.goBack(); }; return ( <div> <h1>About</h1> <form> <label> Filter: <input type="text" value={filter} onChange={handleFilterChange} /> </label> </form> <button onClick={handleGoBack}>Go Back</button> </div> ); } function App() { return ( <Router> <Switch> <Route exact path="/"> <Home /> </Route> <Route path="/about"> <About /> </Route> </Switch> </Router> ); } export default App; ``` 在上面的代码中,我们定义了两个页面组件:`Home` 和 `About`。在 `Home` 组件中,我们使用 `useState` 钩子来保存表单的筛选状态,并在表单的 input 元素上绑定了 `onChange` 事件,以便在用户输入更新组件的 state。 在 `About` 组件中,我们使用 `useLocation` 钩子来获取上一个页面的 location 对象,并从中恢复表单的筛选状态。我们将筛选状态保存到组件的 state 中,并在表单的 input 元素上绑定了 `onChange` 事件。 我们还使用了 `useHistory` 钩子来获取 history 对象,以便在点击 "Go Back" 按钮返回上一个页面。 最后,在 `App` 组件中,我们使用 React Router 的 `Switch` 和 `Route` 组件来实现页面的来回切换。注意,在 `Route` 组件中,我们使用了 `exact` 属性来确保只有在路径为 "/" 才渲染 `Home` 组件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值