"The Word Editor"를 기억하시나요!? 다음은 사용자 인터페이스를 통해 사용자의 포크된 저장소에 변경 사항을 쓸 수 있는 엔드투엔드 기능을 구현하는 스크립트입니다.
스크립트로 강화된 Word Editor는 몇 가지 특정 단계를 수행하여 두 가지 기능을 수행해야 합니다
분석은 다음 도우미 및 유틸리티 기능의 생성에 영감을 주었습니다.
getExistingWord - 편집에 사용할 목적으로 사용자의 포크된 저장소에 있는 기존 단어 파일의 콘텐츠를 간단히 검색하는 함수입니다. 단어를 인수로 사용하고 엔드포인트 "GET /repos/{owner}에 대한 요청의 경로 매개변수(예: src/pages/browse/${normalizeAsUrl(word)}.mdx)에 연결하여 이를 수행합니다. /{repo}/contents/{경로}"; 소비상의 이유로 이 도우미에서 반환된 데이터를 몇 가지 조정해야 했다는 점을 명시하는 것이 중요합니다. 조정 내용은 다음과 같습니다
content_decoded 속성 추가: response.data.content 속성은 검색된 단어의 주요 콘텐츠를 보유하지만 "base64" 형식으로 제공됩니다. 그래서 소비 시 변환할 필요 없이 바로 사용할 수 있는 소비 지원 형식으로 기능을 사용할 수 있으면 좋겠다고 생각했습니다. 아래 코드로 이런 작업을 했습니다...
const { content, ...responseData } = response.data; return { title: word, content, content_decoded: Buffer.from(content, "base64").toString("utf-8"), ...responseData };
updateExistingWord - 초기 이름은 editExistingWord이고 jargonsdev/jargons.dev#34에서 현재 이름으로 변경되었습니다. 이 함수는 writeNewWord와 유사한 작업을 수행하지만 대체하여 특정 파일의 기존 단어 내용을 덮어씁니다. 업데이트된 콘텐츠가 있는 다른 파일과 파일. 이 작업은 "PUT /repos/{owner}/{repo}/contents/{path}" 엔드포인트를 통해 사용자를 대신하여 사용자 계정을 통해 수행됩니다.
writeFileContent - 이름에 암시된 대로 이 도우미는 한 가지 작업을 수행합니다. 즉, writeNewWord 및 updateExistingWord가 GitHub API에 수행한 요청에 제출된 단어에 대한 파일 콘텐츠를 작성합니다. 콘텐츠(예: 단어 정의)를 변수로 지정하고 템플릿에서 콘텐츠를 생성하여 그 안의 자리 표시자 콘텐츠를 대체할 수 있습니다.
이 Pull 요청은 단어 편집기 스크립트를 구현합니다. 이 스크립트의 기본 기능은 새 단어를 추가하고 프로젝트의 src/pages/browse 디렉터리에 있는 개별 .mdx 파일인 기존 단어를 검색 및 업데이트할 수 있도록 하는 것입니다. 이 스크립트는 이 작업을 수행하는 데 필요한 모든 도우미 기능을 제공합니다.
이번 스크린캐스트를 녹화하기에는 너무 게으릅니다 ?, 하지만 저를 믿으세요 ? 정말 효과가 있어요 ??
위 내용은 jargons.dev 작성 [# Word 편집기 스크립트의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!