2024年8月26日

延迟加载脚本

该网站搜索功能所需的脚本仅在搜索栏处于焦点时加载。这样,它们只会为决定使用搜索功能的用户加载,带宽和页面重量可以大大减少。毕竟,只有一小部分访问者会使用搜索功能,那么为什么要每次都花费这么多钱呢? 为了实现这个简单的延迟加载技术,我们首先定义一个我们将调用的函数loadScript: function loadScript(url) { let isLoaded = document.querySelectorAll('.search-script'); if(isLoaded.length > 0) { return; } let myScript = document.createElement("script"); myScript.src = url; myScript.className = 'search-script'; document.…
2024年8月26日

在 Ionic 2+ 中使用存储

Ionic 的 LocalStorage 在 Ionic 2+ 中现在被简称为 Storage,Storage 在后台决定存储数据的最佳方法。例如,在手机上,SQLite 是首选的存储方法。在浏览器中,渐进式 Web 应用使用 IndexedDB、WebSQL 或 localstorage。 存储是保存数据或 Json 对象的键/值对的最简单方法。以下是如何在 Ionic 2+ 应用中使用它。 安装 首先,使用以下命令安装 SQLite Cordova 插件: $ cordova plugin add cordova-sqlite-storage --save 然后安装存储。如果你使用的 Ionic 2 版本高于 RC0,则可以跳过此步骤,因为存储现在已自动包含在内: $ npm install --save @ionic/storage 导入 + 注入 将其导入到适当的模块中,例如应用程序根模块:…
2024年8月26日

如何使用 Ansible 管理多阶段环境

介绍 Ansible 是一个功能强大的配置管理系统,用于设置和管理各种环境中的基础设施和应用程序。虽然 Ansible 提供了易于阅读的语法、灵活的工作流程和强大的工具,但当部署环境和功能各不相同时,管理大量主机可能具有挑战性。 在本指南中,我们将讨论使用 Ansible 处理多阶段部署环境的一些策略。通常,不同阶段的要求会导致组件的数量和配置不同。例如,开发服务器的内存要求可能与暂存和生产服务器的内存要求不同,因此明确控制如何对代表这些要求的变量进行优先级排序非常重要。在本文中,我们将讨论一些可以抽象这些差异的方法以及 Ansible 提供的一些结构以鼓励配置重用。 使用 Ansible 管理多阶段环境的不完整策略 虽然 Ansible 中有许多管理环境的方法,但 Ansible 本身并不提供固定的解决方案。相反,它提供了许多可用于管理环境的…
2024年8月26日

使用 Jekyll 有条件地加载脚本或样式表

为了将页面重量降至最低,Jekyll 的封面有几个技巧可以派上用场。 只有特定的 ? 页面才需要调用特定脚本或应用特定样式。前页允许创建自定义变量,因此可以非常轻松地仅在需要时包含脚本或样式表。 例如,以下是一篇客座文章的前言,其中有趣的部分被突出显示: --- layout: page-fullwidth title: "Sass @each Loops" categories: - sass image: thumb: sass/sass-each-loops.png meta_description: "Loop through maps and lists in Sass. Here's a quick snippet that shows you how." guest: true --- 以下是它如何有条件地包含在页脚包含文件中: _includes/footer_scrip…
2024年8月26日

Shards Vue 入门

Shards Vue 是一款美观而现代的 Vue.js UI 工具包,包含数十个自定义的预构建组件,您可以使用它们来启动您的下一个应用程序。 该库是从头开始构建的,目标是占用空间非常小并提供易于使用且功能强大组件。 该库基于核心Shards UI 套件和Bootstrap 4,因此如果您已经熟悉 Bootstrap 4,那么在使用 Shards Vue 时您会感到非常轻松自如。 开始使用 Shards Vue 非常简单。 1.安装 首先,确保通过 npm 或 Yarn 安装库,具体取决于项目的设置方式: $ yarn add shards-vue # Install via Yarn $ npm install shards-vue # Or install via NPM 2. 注册 下一步是包含基本 Shards 和 Bootstrap 样式表,并在应用的入口点内注册该库。只需几行代码即可实现此目的: i…
2024年8月26日

使用 vue-cli 3、webpack 和 Vue Router 实现延迟加载组件

SPA(单页应用程序)通常由数十甚至数百个组件组成,这些组件可以分成几个 JavaScript 包文件。本文的目的是展示一种进行这种划分的方法,以及如何异步加载每个文件,只有当从路由更改请求组件时才加载。这种异步行为称为延迟加载,可以减小初始包的大小。 项目创建 我们来新建一个项目,按照以下命令使用vue-cli 3来创建: $ vue create my-app ... Vue CLI v3.0.0-beta.9 ? Please pick a preset: Manually select features ? Check the features needed for your project: ( ) TypeScript ( ) Progressive Web App (PWA) Support (*) Router ( ) Vuex ( ) CSS Pre-processors >(*) L…
2024年8月26日

使用 vuex-pathify 驯服 Vuex 野兽

就 Flux 架构实现而言,Vue.js 的 Vuex 是最简单但最优雅的实现之一。但是,它仍然可以做得更好。试图记住为商店中的每个属性编写 getter 和突变似乎有点不必要的认知开销。为什么我们需要手动映射 getter、突变和操作?Dave Stewart的commit“和dispatchagain”之间有什么区别?试图通过为 Vuex 功能提供简单的包装器并依靠惯例来减少样板来减少所有这些脑力开销。vuex-pathify 本文假设您有一个已设置 Vuex 的 Vue.js 项目,并且您了解其工作原理的基本知识。如果没有,请查看我们的Vuex 指南。 安装 vuex-pathify 首先,继续安装 pathify 并在基本 Vuex 存储配置中将其作为插件启用。 $ npm install --save vuex-pathify 然后在您的商店中启用该插件。 ma…
2024年8月26日

在 Jekyll 中压缩你的 HTML

就像 CSS 和 JavaScript 一样,可以通过删除空格、换行符、注释甚至删除某些可选的结束标记来压缩和缩小 HTML 输出,从而减小文件大小。例如,查看此页面的源代码以查看此类压缩的结果。使用 Jekyll,一个名为jekyll-compress-html 的插件可以帮助您做到这一点。该插件使用纯 Liquid 语法来完成 HTML 压缩,因此它不依赖任何东西。 安装 只需两个简单的步骤即可开始使用该插件: 下载并解压插件压缩.html文件并将其放置在_布局Jekyll 设置的文件夹。 在你的最顶层插件中,通常默认.html,添加以下前言: --- layout: compress --- 用法 现在插件已安装并设置完毕,您可以在_config.yml文件。例如: compress_html: clippings: all comments: [""] end…
2024年8月26日

使用 DOMParser 解析 HTML 字符串

我正在使用WP Rest API 插件将 WordPress 博客中的内容访问到 Ionic 2 应用程序中。WP Rest API 返回帖子内容的 HTML 字符串,这可能很难处理。不过幸运的是,DOM解析器Web API 可以轻松地将 html 字符串解析为完整格式的 DOM。 首先实例化一个新的 DOMParser 实例,并使用以下方式将 HTML 字符串传递给它解析字符串()对于此示例,假设我们将 HTML 字符串存储在名为 htmlContent 的变量中: let parser = new DOMParser(); let parsedHtml = parser.parseFromString(htmlContent, 'text/html'); 现在解析后的Html是一个可以交互的 DOM 对象。让我们从中提取一些内容: // The src of the first image: let f…
2024年8月26日

AMP HTML 概述

AMP 代表“加速移动页面”,是 Google 提出的一项开源计划,旨在创建一种统一的方法,使网站在移动设备上的加载速度提高一个数量级。AMP 应该被证明是一种让移动设备上的网络体验更好的好方法,尤其是对于那些网速较慢的用户来说。 AMP 限制了 HTML、CSS 和 JavaScript 的某些部分,以确保快速的体验。为了弥补额外的限制,它还附带了一些组件,让您可以执行诸如嵌入视频、集成轮播和许多其他有趣的事情。AMP 将被 Twitter、Pinterest 和 Google 等渠道用于链接到移动设备上的超快页面版本。在此处试用 Google 中的 AMP 页面演示。 入门 按照如下方式启动您的 AMP HTML 页面: <!doctype html> <html > <head> <meta charset="utf-8"&…