일부 플러그인을 사용하여 metalsmith와 (과) 定 形 화하려고 시도하지만 metalmith-layouts 및 metalsmith-in-place 작업을 함께 만들 수 없습니다. 나는 많은 것들을 시도하고 그들 중 하나가 작동하도록 성공하지만 템플릿 엔진을 사용하는 두 번째는 결코하지 못하게한다 (예를 들어 핸들 바). metalsmith-layouts에서 .hbs 파일을 읽지 않으려 고합니다.metalmith-layouts 및 metalsmith-in-place 작업을 할 수 없습니다.
제대로 핸들 바를 설치했는데 jstransform-handlebars (그리고 .hbs 파일이 metalsmith-in-place에 의해 적절하게 변형되지만 metalsmith 레이아웃으로 작동하지 않을 수 있습니다 ... 그리고 이것은 정말로 짜증납니다).
내 목표는 콘텐츠가 핸들 막대와 같은 템플릿 엔진을 사용하여 렌더링되는 레이아웃 파일을 사용하는 것입니다. 여기
내하는 index.js 코드 :const path = require('path');
const metalsmith = require('metalsmith');
const inPlace = require('metalsmith-in-place');
const layouts = require('metalsmith-layouts');
const assets = require('metalsmith-assets');
const sass = require('metalsmith-sass');
const htmlMinifier = require("metalsmith-html-minifier");
const permalinks = require('metalsmith-permalinks');
metalsmith(__dirname)
.source('src')
.destination('dist')
.use(sass({
file: './src/scss/*.scss',
outputDir: "css/"
}))
.use(inPlace()) //Template engine uses Handlebars
.use(layouts({
engine: 'handlebars',
default: "layout.html.hbs"
}))
.use(htmlMinifier())
.use(permalinks({
relative: false,
pattern: ':url'
}))
.use(assets({
source: 'assets'
}))
.build((err) => err && console.error(err));
그리고 여기 내 디렉토리입니다 :
'index' 또는'test-page'의 내용은 무엇입니까? –
콘텐츠가이 문제에서 중요한 역할을하지는 않지만 레이아웃의 콘텐츠는 간단합니다. {{title}} {{{contents}}}, index is : 홈 페이지이고 테스트 페이지는 다음과 같습니다. 테스트 페이지. –
실제로 메타 데이터가 차이를 만들 수 있습니다. 또한 레이아웃을 그대로 유지할 수있는 것처럼 보입니다. –