问题标签 [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.
javascript - 无法使金属匠布局和就地金属匠工作
我尝试使用一些插件使我成为金属匠的样板,但我无法使金属匠布局和就地金属匠一起工作。我尝试了很多东西,我成功地使其中之一工作,但从未使用模板引擎(例如把手)使第二个工作。似乎 metalsmith-layouts 不想读取 .hbs 中的文件。
我已经正确安装了车把和 jstransform-handlebars (并且 .hbs 文件由 metalsmith-in-place 正确转换,但无法使其与 metalsmith 布局一起使用......这真的很烦人)。
我的目标是使用一个布局文件,其中内容将使用像把手这样的模板引擎呈现。
这是我的 index.js 代码:
这是我的目录:
node.js - 如何使用与 metalsmith 的 npm 内容集成对条目列表进行排序?
我正在尝试使用https://github.com/contentful-labs/contentful-metalsmith-example/blob/master/build.js中显示的内容丰富的金属史密斯示例来订购条目列表
我希望根据条目update
或createdAt
字段值对条目或帖子列表进行排序。
请帮帮我。谢谢。
javascript - 如何从角度应用程序中的 gulp 任务访问 rootPath 集
我有以下构建我的应用程序的任务:
我需要rootPath
从应用程序中访问,例如:
到目前为止,我还没有找到一种干净的方法来做到这一点。我不确定如何在构建时从应用程序内访问应用程序配置。
node.js - npm 包的嵌套依赖破坏了一切
我选择了一个超过一个月没有接触的项目,在尝试部署时发现构建失败。我可以在本地复制错误。该项目一个月前运行良好,从那时起没有(直接)依赖项被更新。
我的简单问题是:有没有办法通过 NPM 缩小谁是造成这场混乱的罪魁祸首?
更多信息:该项目使用 Gulp 4 和 Metalsmith。在我出于部署原因切换到 Node 6 之前,它还使用了 Node lts/carbon。
我已经设法将错误范围缩小到特定的 Metalsmith 插件,尽管这个插件本身最近根本没有更新。
在对文件进行任何先前更改之前package.json
(即大约 2 个月前)恢复到先前的提交不会改变任何内容,并且问题仍然存在。
如果您想进一步深入研究,我已经打开了一张针对 metalsmith-tags的票,其中包含详细信息。
nunjucks - 使用 nunjucks 包括 Metalsmith-in-place 导致渲染错误
我正在使用 Metalsmith 和 Nunjucks 创建一个静态网站。
我创建一个类似博客的网站没有问题,这意味着创建一个布局,我可以使用 metalsmith-layout 插件来包装一些降价内容。
但我想创建一些视图:
- 使用布局(使用 front-matter 或 extends 方法)
- 使用一些手工制作的组件/局部/宏
例如,一个 index.njk :
我尝试使用 metalmisth-in-place 插件:
但我有一个错误:The Transform "nunjucks" does not support rendering synchronously
似乎 inplace() 无法正确呈现包含...
任何想法 ?
node.js - 在树枝模板中使用 Metalsmith 全局元数据
我正在尝试在我的树枝模板中使用 Metalsmith 全局元数据。
我没有找到太多关于在模板中使用全局元数据的文档,无论模板语言如何,除了必须引用变量之外global.KEY
,以下内容应该可以工作。
但是,在我的树枝模板中,两者都{{global.env}}
返回{{global.site_title}}
空字符串。
javascript - 将 {{path}} 视为相对链接而不是绝对链接的把手
我正在使用 Metalsmith 制作一个以 Handlebars 为模板的网站。
我创建了一个名为 /articles/index.html 的存档页面,它获取 /articles/ 中的所有文章并按时间顺序列出它们,但是当我点击存档页面中的链接时,它会将我带到 /articles/articles/example-post。 html 而不是 /articles/example-post.html。如何让它带我到 URL 的绝对版本而不是相对版本?
我用来生成存档的 Handlebars 脚本是:
{{path}} 元数据由 Metalsmith 自动生成。当我在生成的文件上调用 console.log 时,我得到如下输出:
我的主页上有一个几乎相同的设置,它的工作方式与它应该的完全一样。知道如何让它在子文件夹中运行吗?
编辑:好的,我应该清楚:我意识到 {{path}} 是一个相对链接,而不是一个绝对链接。我的问题应该是:“当我只有 {{path}} 可以使用并且它是相对的时,如何让它正常工作?是否有另一个我应该能够访问的变量会产生正确的链接,或者是否有一个如何编辑 {{path}} 使其指向正确的文件?据我所知,无法在 Handlebars 中编辑变量,因此我无法在链接上附加“/”或去掉前面的“文章/”。
handlebars.js - Metalsmith-collection 找不到降价文件
我有一个使用车把和金属匠的静态网站。我可以从我的 metalsmith 配置文件中创建一个collection
调用,但插件会忽略降价文件,因此始终为空carriers
pattern
carriers
我的 JS 文件有 metalsmith 配置,如下所示
我的carriers.hbs
包含以下内容
{{log collections}}
Handlebars 内置帮助程序记录了这一点,{ carriers: [ metadata: undefined ] }
生成的 html 文件如下所示
那么我在这里错过了什么?
markdown - 纯markdown文件到html生成器
我们正在尝试将我们的文档文件(md 文件)转换为静态网站。
我们一直在研究 Hugo、Metalsmith 和其他静态站点生成器。
但我们觉得所有这些都在迫使我们添加自定义标记或许多我们并不真正热衷的额外元数据(frontmatter)。
前。我们在 md 文件中有指向其他 md 文件的链接。发布过程 为了使这些链接正常工作,我们必须使用自定义代码(如 Hugo 的 relrefs 等)更改 md 代码。为什么我们不能只将链接代码维护为纯降价。
我们完全理解添加的 frontmatter 解决了很多问题并为我们提供了很多选择——但我们并不真正需要它们——我们只是想保持简单。
那么是否有任何网站生成器不需要额外的自定义代码来进行链接和结构工作?还是我们误解了我们所看到的生成器中的某些内容?