繁体   English   中英

React:触发根组件外的事件或值

[英]React: trigger an event or value outside the root component

有人可以帮我这个想法吗? 我不知道是否有可能或者我应该使用任何图书馆或技能。

组件(这通常很常见)

import React, { useState } from "react";

export default function App() {
  const [anyVal, setAnyVal] = useState(0);

  return (
    <div className="App">
      <h1>Any Value: {anyVal}</h1>
      <button onClick={() => setAnyVal(anyVal + 1)}>Change value</button>
    </div>
  );
}

连接 HTML + React Dom(这很常见)

import { StrictMode } from "react";
import ReactDOM from "react-dom";

import App from "./App";

const rootElement = document.getElementById("root");
ReactDOM.render(
  <StrictMode>
    <App />
  </StrictMode>,
  rootElement
);

这是我不知道是否可能的部分

  <body>
    <div id="root" onanyvaluechanged="externalFn(v)"></div>
    <script>
      function externalFn(newValue) {
        alert("I've detected the change:" + newValue);
      }
    </script>
  </body>

如果您在这样的脚本标记中声明 function,它存在于全局 window scope 中,因此您可以从您的 React 组件中这样调用它:

window.externalFn('any value')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM