首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从react中的代码镜像中获取值?

如何从react中的代码镜像中获取值?
EN

Stack Overflow用户
提问于 2022-06-17 12:32:05
回答 2查看 537关注 0票数 2

我试图从代码镜像输入字段中获得一个值,但我不知道为什么没有从代码镜像输入字段中获得值

代码语言:javascript
复制
import CodeMirror from "@uiw/react-codemirror";
import { markdown, markdownLanguage } from "@codemirror/lang-markdown";
import { languages } from "@codemirror/language-data";

export default function Editor() {
    const [get, set] = useState("");
    console.log(get); {/* doesn't display anything */}
     
    return (
      <>
        <CodeMirror
          value={get}
          extensions={[
            markdown({ base: markdownLanguage, codeLanguages: languages }),
          ]}
          onInput={(e) => set(e.target.value)}
        />
      </>
    );
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-06-17 13:10:12

onChange处理程序可以输出以下值。

代码语言:javascript
复制
import { markdown, markdownLanguage } from "@codemirror/lang-markdown";
import { languages } from "@codemirror/language-data";
import { useState } from "react";

export default function Editor() {
  const [get, set] = useState("");
  console.log(get);

  return (
    <>
      <CodeMirror
        value={get}
        extensions={[
          markdown({ base: markdownLanguage, codeLanguages: languages })
        ]}
        onChange={(value) => set(value)}
      />
    </>
  );
}

工作实例

票数 0
EN

Stack Overflow用户

发布于 2022-06-17 12:35:30

尝试useEffect钩子,每当第二个参数数组中的变量发生变化时,它都会调用函数,在这个特定场景中,当get更改时。

代码语言:javascript
复制
import CodeMirror from "@uiw/react-codemirror";
import { markdown, markdownLanguage } from "@codemirror/lang-markdown";
import { languages } from "@codemirror/language-data";
import { useEffect } from "react";

export default function Editor() {
    const [get, set] = useState("");
    
    useEffect(() => {
       console.log(get) //gets called whenever get state changes
    }, [get])
     
    return (
      <>
        <CodeMirror
          value={get}
          extensions={[
            markdown({ base: markdownLanguage, codeLanguages: languages }),
          ]}
          onInput={(e) => set(e.target.value)}
        />
      </>
    );
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72659453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档