問題タブ [javascript-marked]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - mark.js によってレンダリングされたタスクから箇条書きを削除する方法
私はmarked.jsライブラリを使用して、テキストエリアからhtmlへの入力を解析しています。マークダウンでは、タスク構文は次のように記述されます:- [x] done task
または- [ ] not done task
.
解析後の結果:
オーバーライドする関数を検索して目的の結果を得るために微調整しようとしましたが、listitem 関数のしくみがわかりませんでした。
通常の順序付けられた/順序付けられていないリスト構文を解析している場合ではなく、タスクケースでのみ箇条書きを削除するにはどうすればよいですか?
javascript - 単純な正規表現ベースのマークダウン パーサーを使用することの欠点は何ですか?
アプリケーションには比較的単純なマークダウン パーサーが必要です。太字やイタリック体などの単純なものです。ライブラリを探していましたが、多くはかなり大きいようです。たとえば、markedは 20,000 個の星で非常に人気があります。そして、2,000 行近くのコードです。これがどれほど大きいかはわかりませんが、かなり複雑に見えます。
一般的に、私は物事をシンプルに保ち、可能な限り依存関係を制限することを好みます。これらすべての行が何をしているのか正確にはわかりませんか?このライブラリは 100 行にも満たないもので、テキストを対応するマークダウンに変換するために単純な正規表現を使用しているだけです。
私の質問は、基本的に、他のライブラリは何をしているのですか? より単純な正規表現に焦点を当てたアプローチを使用することを選択することで、何かが欠けていますか? 後者のライブラリは何らかの形で安全ではありませんか? 私が知らない他の要因を考慮する必要がありますか?
前者のライブラリは非常に人気があり、後者のライブラリには星が 1 つも付いていないため、明らかに、私が見逃している重要なものがあるようです。私はそれが何であるか分かりません。単純なケースでは後者で十分であり、それが必要な場合は前者がより「完全」であることを願っていますが、その結論に飛びつきたくありません。
node.js - マークダウン コンテンツを更新する方法
markdown を使用して投稿を作成するには、marked.js を使用しています。投稿はマークダウンで正常に作成され、html
表示されていますが、投稿を更新/編集するsanitizedHtml
と更新されず、古いコンテンツがまだ含まれています。
他のフィールドは更新されていますがsanitizedHtml
、値に依存しており、バックエンドでbody
変換してサニタイズしています。html
Reactで設定していないため更新されていません。どうすれば解決でき、sanitizedHtml
新しい値で更新できますか?body
sanitizedHtml
body
Post.js モデル
EditPost.tsx
コントローラー/posts.js