問題タブ [metalsmith]

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.

0 投票する
1 に答える
118 参照

static-site - 金属細工師でアクティブなメニュー項目をネイティブに設定するにはどうすればよいですか?

メイン ナビゲーションを備えたシンプルな静的サイトを取得しました。メタルスミス ジェネレーターを操作します。

現在のメニュー項目をアクティブに設定するネイティブな方法はありますか?


私の現在の自動化されていないソリューション:

次のような回避策を作成しました。

page1.md上部に定義できるいくつかの変数を含むコンテンツのソースとしての MD ファイル:

と私のレイアウト HTML ファイルmain.html. handlebarsエンジンとして使用される場所。ここにメニューの一部を投稿するだけです:

どちらも金属細工のレンダリングを行っています。メニューの Page1にcurrentクラスがあります。


質問

私のソリューションはこれまでのところ機能していますが、サイトが拡大するにつれて. すべてのサイトの「現在」を何度も定義する必要があります。気をつけないと設定ミスにつながります... いくつかの専門分野があるので、メインのナビゲーション マークアップに自由を持たせたいと思っています。

または プラグインを使用してアクティブなメニュー項目を設定できますか、metalsmith-permalinksまたはmetalsmith-canonicalこのケースに適した金属細工師のプラグインが存在するか、または別の巧妙な JS 操作を使用できますか?

0 投票する
1 に答える
221 参照

javascript - Metalsmith レイアウトで「処理するファイルがありません」というエラーが発生する

コミュニティ主導の公式ドキュメントのチュートリアルに注意深く従いましたが、Handlebars と metalsmith-layouts を使用してプロジェクトをコンパイルできませんでした。「Metalsmith · 処理するファイルがありません」というエラーが発生しました。

これが私のディレクトリ構造です:

build.js:

および main.hbs: