Выделение фрагмента кода curl в подсветке синтаксиса реакции
Я пытался выделить фрагмент кода curl в своем приложении для реагирования. Я использую
react-syntax-highlighter
для того же.
Проблема в том, что код curl не выравнивается должным образом. под моим фрагментом кода.
import SyntaxHighlighter from 'react-syntax-highlighter';
import { github } from 'react-syntax-highlighter/dist/esm/styles/hljs';
const getCurlSnippet = (loadId, text) =>{
const token = localStorage.getItem("token");
const PARSE_API_URL = "API URL";
return `curl ${PARSE_API_URL} \
-H 'authorization: ${token}' \
-H 'Content-Type: application/json' \
--data-raw '{"loadId":"${loadId}","text":"${text}"}' \
--compressed`;
}
const getHighlightSnippet = () => (
<SyntaxHighlighter
language="curl"
style={github}
customStyle={{borderRadius: "12px", padding: "16px", background: "rgb(227 224 224)"}}
>
{getCurlSnippet("U134IJ", "Hello world")}
</SyntaxHighlighter>
);
Вот на ссылкапесочницу
Вывод идет в одну строку, а не по вертикали.
1 ответ
Использовать
bash
как язык в вашем
SyntaxHighlighter
Компонентные реквизиты, а не
curl
а также
Вместо того, чтобы писать только
\
в конце каждой строки напишите
\n
, которые перемещают код на следующую строку.
Вот ваш рабочий код:
// app.js
import SyntaxHighlighter from "react-syntax-highlighter";
import { github } from "react-syntax-highlighter/dist/esm/styles/hljs";
import "./styles.css";
const getCurlSnippet = (loadId, text) => {
const authToken = "toekn";
const PARSE_API_URL = "API_URL";
return `curl '${PARSE_API_URL}' \n
-H 'authorization: ${authToken}' \n
-H 'Content-Type: application/json' \n
--data-raw '{"loadId":"${loadId}","text":"${text}"}' \n
--compressed`;
};
export default function App() {
return (
<div className="App">
<h1>Hello CodeSandbox</h1>
<h2>Start editing to see some magic happen!</h2>
<SyntaxHighlighter
language="bash"
style={github}
customStyle={{
borderRadius: "12px",
padding: "16px",
background: "rgb(227 224 224)"
}}
>
{getCurlSnippet("U134IJ", "Hello world")}
</SyntaxHighlighter>
</div>
);
}