假设我有两个任务管理器,每个任务管理器只有一个任务槽。现在,我有以下工作:
KeyedStream<...> streamA = env.addSource(...).keyBy(...);
KeyedStream<...> streamB = env.addSource(...).keyBy(...);
streamA.connect(streamB).flatMap(new StatefulJoinFunction()).setParallelism(2);
Run Code Online (Sandbox Code Playgroud)
一个任务管理器将使用来自 Kafka 主题的数据,另一个任务管理器将使用来自另一个 Kafka 主题的数据。
我将作业发送给作业管理器来执行它。Flink 分配两个任务管理器来处理 flatMap(因为任务管理器只有一个任务槽)。
flatMap 在事件之间进行简单的连接(使用两个键控状态):
public class StatefulJoinFunction extends RichCoFlatMapFunction<A, B, String> {
private ValueState<A> AState;
private ValueState<B> BState;
@Override
public void open(Configuration config) {
AState = getRuntimeContext().getState(new ValueStateDescriptor<>("A event state", A.class));
BState = getRuntimeContext().getState(new ValueStateDescriptor<>("B event state", B.class));
}
@Override
public void flatMap1(A event, Collector<String> out) throws Exception {
B secondEvent = BState.value();
if (secondEvent == null)
AState.update(event);
else {
out.collect(...); …Run Code Online (Sandbox Code Playgroud) 当我在寻找 C++ 仿函数的解释时,我看到了下面的说法:“仿函数有一些好处。其中之一是,与常规函数不同,它们可以包含状态。”
谁能向我解释一下 C++ 中的“状态”是什么意思?非常感谢。
我有一个非常简单的计算器,可以通过React计算两个输入,并且我result在更新状态时遇到问题(result通过名为 的函数更新状态calc)。这是通过下一个动作完成的,而不是在当下完成的!
总之,现在结果状态计算出错误的值。
我的代码:
const App = () => {
const [state, setState] = useState({
firstVal: 0,
secondVal: 0,
operator: "+",
result: 0
});
const { firstVal, secondVal, operator, result } = state;
const calc = (firstVal, secondVal, operator) => {
if (operator === "+") {
return firstVal + secondVal;
} else if (operator === "-") {
return firstVal - secondVal;
} else if (operator === "*") {
return firstVal * …Run Code Online (Sandbox Code Playgroud) 我有一个 Fire 类,uid如果用户未连接,则返回未定义,如果用户已连接,则返回字符串(他的 uid)。
有时我的渲染取决于此。
例如 :
const [auth, setAuth] = useState<undefined|string>(Fire.shared.uid);
[...]
<Text>{(auth == undefined) ? "not authentificated" : "great")}</Text>
Run Code Online (Sandbox Code Playgroud)
我们可以想象用户没有连接,因此文本将是not authentificated。现在他将在其他页面登录或注册,因此Fire类中的 uid 变量将发生变化。那么我应该如何改变状态值呢?
没有 useState 全局或类似的东西吗?
谢谢。
我正在使用 vue 2.6.14 和composition-api 1.3.3 包来使用composition api。我有
我的 main.js 喜欢
import Vue from 'vue'
import VueCompositionAPI from '@vue/composition-api'
Vue.use(VueCompositionAPI)
import App from './App.vue'
import router from './router'
Vue.config.productionTip = false
new Vue({
router,
render: h => h(App)
}).$mount('#app')
Run Code Online (Sandbox Code Playgroud)
我尝试开一家商店
我有一个src folder / store folder / index.js
并在里面index.js
import { reactive } from '@vue/composition-api'
const state = reactive({
counter : 0
})
export default{ state }
Run Code Online (Sandbox Code Playgroud)
在里面App.vue我尝试导入 store 来使用它
<script>
import store from '@/store'
</script>
Run Code Online (Sandbox Code Playgroud)
我收到错误 …
我有一个反应侧边栏菜单,当单击此侧边栏中的按钮时,我想更新变量的状态。然而,该事件在渲染时触发,而不是等待点击,非常感谢您的帮助!
侧边栏
return (
<>
<div id="container1">
<ProSidebar id='tester1'>
<SidebarHeader>
<h1>Header Title</h1>
</SidebarHeader>
<SidebarContent>
<Menu iconShape="square">
<MenuItem onClick={funx(1)} icon={<FiHome className='sideBarIcon'/>}></MenuItem>
<MenuItem icon={<FaList className='sideBarIcon'/>}></MenuItem>
<MenuItem icon={<FaRegHeart className='sideBarIcon'/>}></MenuItem>
<MenuItem icon={<RiPencilLine className='sideBarIcon'/>}></MenuItem>
<MenuItem icon={<BiCog className='sideBarIcon'/>}></MenuItem>
</Menu>
</SidebarContent>
<SidebarFooter>
<Menu iconShape="square">
<MenuItem icon={<FiLogOut />}>{x}</MenuItem>
</Menu>
</SidebarFooter>
</ProSidebar>
</div>
</>
);
Run Code Online (Sandbox Code Playgroud)
状态的设置位置:
const [x, setX] = useState([]);
const funx = (e) => {
console.log(e);
setX(e);
}
Run Code Online (Sandbox Code Playgroud)
我想补充一点,如果我e从 中删除参数funx,并且仅funx在我的菜单中调用,则 onclick 事件似乎工作正常。不过我想通过 1/2/3/等等。取决于点击的内容
createContext我是一名新开发人员,当、和 Providers等事物存在时,我很难理解 Redux 的重要性useContext。根据我天真的观察,您似乎只需在顶层组件中使用全局上下文提供程序就可以完成 Redux 可以做的所有事情(减去状态跟踪开发工具扩展)。
例如,这样的事情:
function App() {
const [stateOne, setStateOne] = useState();
const [stateTwo, setStateTwo] = useState();
return (
<ContextProvider shared={{
stateOne,
setStateOne,
stateTwo,
setStateTwo
}}>
...
</ContextProvider>
)
}
Run Code Online (Sandbox Code Playgroud)
现在所有后代组件都可以访问全局状态,这似乎是 Redux 的要点。我是否遗漏了 Redux 的一个重要差异化因素?
我正在尝试为文本字段实现覆盖功能,该功能根据用户输入的内容显示某些特定状态。当用户点击文本字段时,它将显示一个覆盖层,该覆盖层应在用户书写时显示一些信息,就像网络浏览器上的搜索栏一样。
我的问题是 OverlayEntry 的内容不会在用户输入更改的同时更新,它仅在我重新打开 Overlay 时更改。
预期行为
目前的行为
为了测试此功能,我只是将相同的值从文本字段传递到覆盖层。
这是我的代码:
家庭班
class MyHomePage extends StatefulWidget {
const MyHomePage({super.key, required this.title});
final String title;
@override
State<MyHomePage> createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return GestureDetector(
onTap: () => FocusManager.instance.primaryFocus?.unfocus(),
child: Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
CustomTextField(),
]),
// This trailing comma makes auto-formatting nicer for build methods.
),
));
}
}
Run Code Online (Sandbox Code Playgroud)
自定义文本字段类:
class CustomTextField extends …Run Code Online (Sandbox Code Playgroud) state ×9
reactjs ×4
javascript ×2
vue.js ×2
apache-flink ×1
asynchronous ×1
c++ ×1
components ×1
expo ×1
flutter ×1
functor ×1
join ×1
overlay ×1
provider ×1
react-native ×1
redux ×1
sidebar ×1
store ×1
vue-props ×1
vuejs2 ×1