怎样使用Vue页面骨架屏注入
这次我们就来看看如何使用Vue页面骨架屏注入,以及使用Vue页面骨架屏注入有哪些注意事项,下面是一个实际的事情,我们来看看。作为一名与用户密切接触的前端开发人员,用户体验是非常关心的问题。
显示页面加载状态的主要方法有两种:加载图和进度条。
此外,越来越多的应用程序使用“骨架屏”的方式来显示卸载的,这为用户提供了全新的体验。
随着SPA在前端界越来越流行,初始加载画面问题持续困扰着开发者。
那么有没有办法在SPA中使用骨架屏呢?这就是本文要探讨的。
文章相关代码同步Github,欢迎查看~1.简单来说,骨架屏在未加载时,在加载后,使用一些图形来替换页面的。
该技术在一些基于的APP和网站中得到了广泛的应用。
接下来我们将以一个简单的Vue项目为例,探讨如何在基于Vue的SPA项目中实现骨架渲染。
2.为了简单起见,我们将使用Vue的页面加载过程。
Vue项目:├──打包npmrundev来运行项目。
不过,在运行项目之前,我们先看看HTML文件中写了什么。
Hello骨骼
Hello骨骼
Hello骨骼
在Chrome开发者工具中打开,找到网络中的节流功能,网络速度调整为“Slow3G”,刷新页面,你会看到页面首先显示了三个“Hello骷髅”句子,然后被前面的句子所取代。js加载完毕。
现在,我们对于如何在Vue页面上实现骨架屏有了一个非常清晰的思路——只需将骨架屏相关直接插入到p#app中即可。
3、易于维护的解决方案显然,在p#app中手动编写骨架屏是不科学的。
因为是Vue项目,所以称为骨架屏我们当然希望它是一个名为的.vue文件,可以在构建过程中由工具直接导入到p#app中。
首先,我们在/src目录中创建一个新的Skeleton.vue文件,其中包含以下:="骨骼页面">="骨骼-nav"> ="骨骼-swiper"
也放置在应用程序之间的p#中。
当然,我们可以对这些进行进一步的处理和压缩。
重写Skeleton.js并在其中添加html-minifier: +consthtmlMinifier=require('html-minifier') renderer.renderToString({},(err,html)=>{+html=htmlMinifier.minify(html,{+collapseWhitespace:true,+minifyCSS:true+})fs.writeFileSync('index.html',html,'utf-8')})查看结果:结果很棒!在这个当Vue页面访问骨架屏就完全实现了。
相信看完本文的主题,您已经掌握了方法。
更多有趣的信息,请关注Gxl.com上的其他相关文章!推荐阅读:如何使用js包装jax函数功能及用法JS常见内置函数使用详解
webpack完全指南:代码压缩
在前端创建和编译代码时,压缩也非常重要。
压缩后的代码体积小,传输速度高,从而提高网页加速速度,减少网络传输流量。
此外,它还具有混淆源代码的作用。
由于压缩代码的可读性很差,即使别人下载了网页代码,这也大大增加了代码分析和改造的难度。
目前最成熟的JavaScript代码压缩工具是UglifyJS。
它将解析JavaScript代码的语法树并理解代码的含义,因此它可以执行诸如删除无效代码之类的操作。
注册表输出代码、变量名缩写等优化。
在Webpackv4中,uglifyjs-webpack-plugin默认集成到生产模式。
因此,打包后的JS文件默认会被压缩。
如果需要更多自定义,还可以配置uglifyjs-webpack-plugin。
首先安装uglifyjs-webpack-plugin:
npminstalluglifyjs-webpack-plugin--save-dev然后添加到你的webpack配置中:
constUglifyJsPlugin=require("uglifyjs-webpack-plugin");module.exports={optimization:{minimizer:[newUglifyJsPlugin()],},};uglifyjs-webpack-plugin的可配置元素:
test:test对应的文件,默认值:/\.js(\?.*)?$/i
module.Exports={optimization:{minimizer:[newUglifyJsPlugin({test:/\.js(\?.*)?$/i,}),],},};包括:要处理的文件。
排除:未处理的文件。
chunkFilter:确定哪些块可以折叠(默认情况下所有块都会被压缩)。
如果返回值为true,则进行压缩,如果返回值为false,则不进行压缩。
cache:开始缓存文件,默认为false,目录路径默认缓存:node_modules/.cache/uglifyjs-webpack-plugin。
并行:使用多个进程并行运行,提高创建速度。
默认设置为false,建议启用。
sourceMap:使用源映射将错误信息的位置映射到表单(这会减慢编译速度),默认为false。
uglifyOptions:UglifyJS压缩配置选项。
压缩CSSCSS代码也可以压缩为JS。
目前最成熟可靠的CSS压缩工具是cssnano,它可以理解CSS代码的含义,而不仅仅是去掉空格,例如:
对于webpackv5以上版本,官方推荐使用CssMinimizerWebpackPlugin,该插件使用cssnano来优化和压缩CSS,并且支持缓存和并发模式运行。
首先我们需要安装css-minimizer-webpack-plugin:
npminstallcss-minimizer-webpack-plugin--save-dev然后在webpack中配置添加此插件:
constCssMinimizerPlugin=require("css-minimizer-webpack-plugin");module.exports={// optimization:{minimizer:[//在webpack@5中,可以使用` `语法来扩展现有的minimizer(例如`terser-webpack-plugin`),删除下一行注释` `,newCssMinimizerPlugin(),],},};压缩HTML也帮助我们为了简化HTML文件的创建,HtmlWebpackPlugin插件还可以压缩HTML文件。
首先需要安装HtmlWebpackPlugin插件:
npminstall--save-devhtml-webpack-plugin添加到webpack配置文件中:
>//webpack.config.jsconstHtmlWebpackPlugin=require("html-webpack-plugin");module.exports={plugins:[newHtmlWebpackPlugin()],};如果不添加配置,会生成默认索引.html并自动注入所有块和压缩。
您还可以自定义配置参数。
以下是常用参数:
template:模板的路径,如果存在则查找src/index.ejs。
filename:输出文件的名称,默认为index.html。
inject:是否将资源注入到模型中,默认为true。
minimize:压缩参数。
在生产(Production)模式下,默认值为true;否则,默认值为false。
如果minify为true,生成的HTML将使用html-minifier-terser和以下选项折叠:
{collapseWhitespace:true,keepClosingSlash:true,removeComments:true,removeRedundantAttributes:true,removeScriptTypeAttributes:true,removeStyleLinkTypeAttributes:true,useShortDoctype:true>香港服务器延迟高的问题怎么解决
服务器访问速度是一个非常重要的问题,它会直接影响用户体验,也会影响网站排名。
如果网站应用程序的访问速度比较慢,则会影响网站应用程序的后续运行。
印象非常深刻。
如果公司的业务是基于网站应用的话,访问速度慢是非常致命的,所以在租用之前,你应该提前了解你要租用的香港服务器的访问速度。
存在一个问题,无论什么服务器,使用一段时间后访问都会变慢,如何解决这种问题?
1.服务器响应时间
即使网站进行了优化,也不会有太大影响,除非服务器响应时间非常快。
在提高网站速度时,服务器响应时间起着重要作用。
以下是一些提高服务器响应时间的技巧。
不要选择共享/托管服务器,而应选择专用服务器。
提高网络服务器的质量。
删除不必要的插件只有那些必要的插件才应始终保持启用状态。
2.浏览器缓存
3.gzip压缩
Gzip压缩是一种压缩实用程序,我们可以使用它来快速加载网站。
它的工作原理是在将HTML和CSS文件发送到Internet浏览器之前压缩它们的文件大小。
允许mod_defalte模块启用gzip压缩,下面是如何使用它的代码示例:
4。
异步脚本
提高网站页面速度的另一种好方法该选项是异步加载脚本。
这样,网页加载就不必依赖这些异步脚本,网站访问者也不再需要等待所有脚本加载后再渲染页面。
在异步模式下,脚本在后台下载。
通常,我们将第三方脚本视为异步脚本,因为下载这些脚本通常会使网站变得非常慢。
5.分发网络(CDN)
分发网络(CDN)是由位于不同地理位置的服务器组成的网络。
每个服务器都保留所有网站的文件副本。
如果网站访问者请求文件和网页,则可以直接从最近的网站服务器(或从负载最低的服务器)发送它们。
6.优化JavaScript、HTML和CSS
优化JavaScript和CSS还可以提高网站的页面速度,而且方法很简单。
优化JavaScript、HTML和CSS意味着删除所有不必要的空格和注释,从而减小文件大小。
这里有一些非常有用的压缩JavaScript和CSS的流行工具。
CSSMinifier
Avivo
HTMLCompre ssor
7.样式表位于顶部,脚本位于底部
将样式表放在顶部有助于网站快速加载,因为它允许页面逐步呈现。
一般来说,所有互联网浏览器都支持在给定时间并行下载两个组件(图像、样式和脚本)。
我们做到了。
但一般来说,过多的脚本会在并行下载时阻塞其他下载,直到该脚本下载完成。
8.避免阻塞JavaScript和CSS
浏览器在渲染网页之前,需要通过解析HTML标记语言来创建DOM树。
在这个过程中,如果遇到脚本,就会终止进程,先执行脚本,然后继续原来的Activity。
因此建议避免阻塞JavaScript,尤其是外部脚本。
阻止JavaScript也会导致网站延迟。
所以你可以推迟加载不重要的JavaScript,或者异步加载它。
另一种选择是将HTML代码嵌入到网站中,确保CSS得到优化。
9.JavaScript的延迟解析
为了加载网页,浏览器必须解析所有