npm 包 prember-crawler 使用教程

在前端开发的过程中,我们经常需要优化应用的搜索引擎优化 (SEO)。Pember-crawler 是一个优秀的 Npm 包,可以帮助我们快速生成静态化渲染页面以及预加载的信息,以提高搜索引擎的索引与网站的速度。本文将详细介绍如何使用 prember-crawler 来优化你的应用程序。

什么是 prember-crawler

Pember-crawler 是一个能够将 Ember 应用程序的所有带有表单验证、表单存储或 Ajax 操作的动态或异步内容缓存为静态 HTML 页面,并且预加载大量的信息到渲染过程中的 Npm 包。它实现了网站的快速渲染和索引,同时提高了搜索引擎采集器的效率。

使用说明

安装 Prember-crawler

如果你还没有安装 Prember-crawler, 通过以下终端命令行来安装:

--- - ---------------

配置 Prember-crawler

安装完造价 prember-crawler 后,需要进行以下配置. 首先,在项目目录中创建一个名为“prember.js”的文件。这个文件导出一个配置函数,函数有两个参数: prember 和 options。此函数配置 Prember 的选项及属性, prember 是 Prember 的一个实例。

让我们来看一下 prember.js 的配置代码:

----- -- - --------------

-------------- - -------- --------- -
  --------------- - -
    ------------- -----------------
  --
  
  ------------------- - ----- -- -
    -- ---- --- ---- -
      ------ --------------
    -
    ------ --- - --------------
  --

  ----------------------- - ------------- ----------- -
    -- -------------------- -
      --- -- ----
    -
    ----- ---- - ----------------------- ---------- ---------
    ---------------------------- ---------------- ------ --------------------------------------------- - -- ------------------------------------------ ----------
    ------ -----
  --

  --------------------------- ------------ ----------------
--

注意:在 Prember 中,应用程序的首页必须命名为“index.html”,它是生成静态 HTML 页面的入口。

该配置文件将 Prember 配置为将爬网站 URL “/”,“/about-us” 以及“/contact-us” 格式化为对应的 HTML 文件。

在 Prember 渲染每个页面的时候会用到“renderRouteSync”选项并且它返回了两个参数:url 和 outputPath。对于 renderRouteSync 的每个路由,Pember-crawler 会从 outputPath 中读取 HTML,并在处理完它们之后使用 fs.writeFileSync 将处理后的输出写回 outputPath。

预加载

本质来说,预加载是提前加载和渲染网站的部分内容,使得访问者在进入链接 (进行导航)时获得快速的体验。

在 Prember-crawler 中,可以在配置文件中使用 fs.readFileSync 和 fs.writeFileSync 函数来处理预加载。如上 Prember-renderRouteSync 示例代码,prember-crawler 设置了一个“data-preload”属性来提升性能。此属性告诉浏览器在当前页面资源加载完成后,该链接指向的下一个页面资源应当提前加载。

缓存

Prember-crawler 使得生成并缓存修复的 HTML 文档变得相当糖果般。

在 Prember-crawler 配置文件中可以修改如下的选项以实现缓存功能:

-------------------- - --------
--------------- - ----------------------

outputPrefix 表示缓存文件的前缀,baseURL 表示根目录的绝对URL。缓存文件遵循:${outputPrefix}/${baseURL}/${path}/index.html 的形式。

运行 Prember-crawler

在完成了 Prember-crawler 的配置之后,你可以使用以下命令行运行 Prember-crawler,并在终端查看生成的文件。

------- -- ----------- ---- ------ ------

请记住:此时 Prember-crawler 的输出将在静态服务器上运行,以便在浏览器中测试。

总结

在本文中,我们详细介绍了如何使用 Prember-crawler 来帮助我们优化前端应用程序的搜索引擎优化。 Prember-crawler 以其简单易用、高效、自动化为特点,帮助开发者生成静态页面,浏览器直接读取即可。在实际开发中,开发者可以根据需求的不同,自行组合预加载和缓存等选项,并加以细化优化来提高应用程序的性能和搜索排名。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/5eedaa3fb5cbfe1ea06103eb


猜你喜欢

  • npm 包 wc-context 使用教程

    在 Web Components 中,组件之间的通讯是非常重要的。然而,由于不同库之间通常存在不兼容性,开发者需要耗费大量时间去解决这个问题。这时,npm 包 wc-context 就能派上用场了!本...

    4 年前
  • npm 包 @bolt/tools-spacing 使用教程

    前言 在前端开发中,布局往往是非常重要的,对于不同的元素之间的距离和排列方式,我们通常需要采用不同的方式。而在使用 CSS 进行布局时,调整元素与元素之间的空间往往是一种比较繁琐的过程。

    4 年前
  • npm 包 @bolt/global 使用教程

    在前端开发中,我们经常使用的一些工具或者代码库,可以通过 npm 包的形式封装起来供我们使用。其中,@bolt/global 是一个非常实用的 npm 包,提供了一些全局的 CSS 样式和 JavaS...

    4 年前
  • npm 包 @bolt/components-action-blocks 使用教程

    前言 在前端开发中,经常需要使用一些 UI 组件。而在许多情况下,自己编写的组件需要再次使用,这时候就需要将这些组件封装成 npm 包,以便于他人使用。 本文就是要介绍一个非常优秀的 UI 组件 np...

    4 年前
  • npm 包 @bolt/tools-strip-unit 使用教程

    在前端开发中,涉及到长度、宽度、高度等属性时,通常是使用带有单位的 CSS 属性值,例如 width: 100px; 或 height: 50vh;。然而,在一些情况下,我们可能需要将这些属性值去掉单...

    4 年前
  • npm 包 @bolt/components-background 使用教程

    简介 在前端开发中,使用各种框架和库进行快速的开发已经变得非常常见。NPM(Node.js 包管理器)是一个广泛使用的包管理器,允许开发者轻松地安装、更新和管理依赖项。

    4 年前
  • npm 包 @bolt/components-background-shapes 使用教程

    前言 在前端开发中,我们经常使用到各种 npm 包来辅助我们完成工作。其中,@bolt/components-background-shapes 是一个非常强大的包,它可以帮助我们快速地实现各种漂亮的...

    4 年前
  • npm 包 @bolt/tools-text-contrast 使用教程

    随着移动设备的广泛使用,网站设计必须考虑到各种显示设备的不同条件。其中一个重要的方面是文本对比度,可读性是一个好的使用体验的必要条件。但是,当我们在应用中使用不同颜色和字体时,很难确保它们在不同的背景...

    4 年前
  • npm包@bolt/components-grid使用教程

    前言 在前端开发中,使用框架来构建网页和应用程序变得越来越普遍。其中的一部分原因是因为现代框架通常提供了对常见 UI 组件的支持,使得开发人员不必从头编写组件,可以更快地构建出网页,并提高网页的可重用...

    4 年前
  • npm 包 @bolt/tools-uppercase 使用教程

    前言 在前端开发中,我们经常需要对字符串进行大小写的转换,对于这种需求,我们可以借助 npm 包 @bolt/tools-uppercase 来快速实现。 本文将详细介绍如何使用 @bolt/tool...

    4 年前
  • npm 包 @bolt/components-link 使用教程

    在前端开发中,我们经常需要在页面中添加链接。@bolt/components-link 是一个 npm 包,提供了一系列链接组件,可以方便地在网站中添加链接。本文将介绍如何使用 @bolt/compo...

    4 年前
  • npm 包 @bolt/components-text 使用教程

    在前端开发中,构建 UI 组件常常是一项重要任务,因为一个好用的 UI 组件库能够大大简化开发流程和提升开发效率。而 Bolt 就是一个优秀的 UI 组件库,它提供了一系列的组件和样式,帮助开发者构建...

    4 年前
  • npm 包 @bolt/components-blockquote 使用教程

    前言 在前端开发中,我们经常需要使用到一些组件库来加速开发,而 Bolt 是一个在组件开发上非常出色的库,其中的 @bolt/components-blockquote 就是其中一个实用的块级组件。

    4 年前
  • NPM包@bolt/tools-visuallyhidden的使用教程

    在前端开发中,很多时候我们需要实现一些隐形元素,例如用于增强可访问性(accessibility)的文字或按钮,或是屏幕阅读器(screen reader)需要用到的标记等。

    4 年前
  • npm 包 @bolt/components-breadcrumb 使用教程

    前言 在前端开发中,我们经常需要使用一些库来帮助我们实现一些功能。npm 是一个充满着各种库的 JavaScript 包管理器,其中 @bolt/components-breadcrumb 是一款典型...

    4 年前
  • @bolt/components-button-group npm 包使用教程

    在前端开发中,组件化开发已经成为一种趋势。而 @bolt/components-button-group 是一款优秀的组件库,可以帮助前端工程师快速开发出优美、高效的按钮组。

    4 年前
  • npm 包 k-bucket-sync 使用教程

    前言 如果你正在寻找一种方便快捷的方法来同步分布式系统的数据,那么 k-bucket-sync 可能会成为一种很好的选择。k-bucket-sync 是一个基于 Kademlia 协议的 JavaSc...

    4 年前
  • npm 包 merkle-tree-binary 使用教程

    在 Web 前端开发中,merkle-tree-binary 是一个常用的 npm 包,它可以被用来提高安全性、验证数据完整性以及优化数据传输。本文将详细介绍如何使用 merkle-tree-bina...

    4 年前
  • npm 包 es-dht 使用教程

    npm 包 es-dht 使用教程 简介 es-dht 是一款 NPM 包,它提供了一个基于 DHT 协议的分布式数据存储系统,可用于前端和服务器端开发。 安装 你可以使用 npm 安装这个包: -...

    4 年前
  • npm包@bolt/components-chip使用教程

    介绍 @bolt/components-chip是一个基于Bolt设计系统的React组件库,提供了丰富的Chip组件实现,可以轻松实现各种Chip组件的开发。 本文将介绍如何在项目中使用@bolt/...

    4 年前

相关推荐

    暂无文章