@danielhaim/slugify

中文文档
1.1.1发布于 2025/09/18MITCommonJS零依赖近 30 天下载 1.9万

一个从字符串中生成 SEO 友好弹簧的多语言工具.

中文使用文档
文档目录11 节
  1. 演示
  2. 支持的语言
  3. 安装
  4. 国家预防机制
  5. 实例
  6. 带身份证的头
  7. 德语特殊字符
  8. 带有特殊字符和分隔符的其他示例
  9. 构建进程
  10. 测试
  11. 报告错误

多朗粘贴

npm version Downloads GitHub

Slugify是一款将文本转换为干净,SEO友好的弹道的全用弹道发生器. 在标题中实现锚地ID自动化是理想的,它旨在处理广泛的语言和特殊字符.

演示

Multilang Slugify Demo

支持的语言

污名化支持多种语言:

德语、丹麦语、荷兰语、芬兰语、法语、匈牙利语、意大利语、挪威语、葡萄牙语、罗马尼亚语、俄语、西班牙语、瑞典语、土耳其语、希腊语、保加利亚语、塞尔维亚语、克罗地亚语、捷克语、波兰语、斯洛伐克语、斯洛文尼亚语、拉脱维亚语、立陶宛语、爱沙尼亚语、波斯语、阿拉伯语、希伯来语、印地语、泰国语、中文、日语、韩语、越南语、乌克兰语以及埃莫吉语

安装

您可以通过 npm 安装此模块 :

$ npm i @danielhaim/slugify

国家预防机制

import { slugify } from './path/to/slugify/index.js';

const slugifier = new slugify();
console.log(slugifier.generate("Hello World!")); // returns "hello-world"

实例

带身份证的头

输入 :

<h1><span>How will mobile commerce impact 2022?</span></h1>
<h2><span>Sophia, Ärztin aus Hamburg</span></h2>
<h2><span>Süße Sophia, schön und klug</span></h2>
// Function to generate slugs
function generateSlug(titleElement) {
  const titleContent = titleElement.textContent || '';
  const slugifier = new slugify();
  const slugged = slugifier.generate(titleContent);
  return slugged;
}

// Select all heading elements (h1, h2, h3, etc.)
const headingElements = document.querySelectorAll('h1, h2, h3, h4, h5, h6');

headingElements.forEach((headingElement) => {
  const slugged = generateSlug(headingElement);

  // Only set the ID and create <a> if a valid slug is generated
  if (slugged) {
    const anchorElement = document.createElement('a');
    anchorElement.href = `#${slugged}`;
    anchorElement.textContent = headingElement.textContent;
    headingElement.innerHTML = ''; // Clear existing content
    headingElement.appendChild(anchorElement);
  }
});

输出 :

<h1><a href="#how-will-mobile-commerce-impact-2022"><span>How will mobile commerce impact 2022?</span></a></h1>
<h2><a href="#sophia-aerztin-aus-hamburg"><span>Sophia, Ärztin aus Hamburg</span></a></h2>
<h2><a href="#suesse-sophia-schoen-und-klug"><span>Süße Sophia, schön und klug</span></a></h2>

德语特殊字符

const slugifier = new slugify();

slugifier.generate('Ist dein Name Sophia?'); // Output: "ist-dein-name-sophia"
slugifier.generate('Sophia, Ärztin aus Hamburg'); // Output: "sophia-aerztin-aus-hamburg"
slugifier.generate('Wie geht es dir, Sophia?'); // Output: "wie-geht-es-dir-sophia"
slugifier.generate('Süße Sophia, schön und klug'); // Output: "suesse-sophia-schoen-und-klug"
slugifier.generate("Sophia's Geburtstag"); // Output: "sophias-geburtstag"

带有特殊字符和分隔符的其他示例

const slugifier = new slugify();

slugifier.generate('Hello, world!'); // Output: "hello-world"
slugifier.generate('Hello, world!'); // Output: "hello_world"
slugifier.generate('Hello, world!'); // Output: "hello-world"

slugifier.generate('#1 Best in Class'); // Output: "number-1-best-in-class"
slugifier.generate('[email protected]'); // Output: "hello-at-example-com"

构建进程

$ npm run build

测试

$ npm run test

报告错误

如果您在使用库时遇到任何错误或问题,请通过打开寄存器的问题跟踪器中的新一期来报告.

在报告错误时,请提供尽可能多的细节,包括复制问题的步骤和您看到的任何错误信息. 我感谢对改进图书馆的任何贡献.

版本与发布记录

@danielhaim/slugify 共发布 9 个版本,首次发布于 2024/01/21;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.1.1latest2025/09/181.1 年前
1.1.02025/09/181.1 年前
1.0.112024/01/232 年前
1.0.102024/01/232 年前
1.0.92024/01/232 年前
1.0.82024/01/232 年前

关于 @danielhaim/slugify 的常见问题

@danielhaim/slugify 是什么?

一个从字符串中生成 SEO 友好弹簧的多语言工具.

如何安装 @danielhaim/slugify?

在项目目录运行 npm install @danielhaim/slugify,或使用 pnpm add / yarn add / bun add。

@danielhaim/slugify 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/danielhaim__slugify 是否存在。

@danielhaim/slugify 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@danielhaim/slugify 可以商用吗?

@danielhaim/slugify 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@danielhaim/slugify 的下载量有多少?

根据 npm 官方下载统计,@danielhaim/slugify 在 2026/10/11 – 2026/11/09 这 30 天内被下载 18,980 次,日均约 633 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@danielhaim/slugify 还在维护吗?

最新版本 1.1.1 发布于 2025/09/18(1.1 年前);至今共发布 9 个版本,其中过去 12 个月发布了 0 个;首次发布于 2024/01/21。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。