您现在的位置是: 首页 > SEO优化 SEO优化
vue seo解决方案_vueseo解决方案
zmhk 2024-04-22 人已围观
简介vue seo解决方案_vueseo解决方案 大家好,今天我要和大家探讨一下关于vue seo解决方案的问题。为了让大家更容易理解,我将这个问题进行了归纳整理,现在就让我们一起来看看吧。1.jsonschema-form-vue基于J
大家好,今天我要和大家探讨一下关于vue seo解决方案的问题。为了让大家更容易理解,我将这个问题进行了归纳整理,现在就让我们一起来看看吧。
1.jsonschema-form-vue基于JSON Schema表单自动生成方案
2.vue3中vue.extend的替代方案
3.Web前端是干嘛的
4.前后端分离方案以及技术选型
5.Vuejs高度的改变动画探索:折叠面板Collapse组件的最佳实现方案
6.店铺装修移动化前端方案
jsonschema-form-vue基于JSON Schema表单自动生成方案
作为一名前端开发,「表单开发」是我们的家常便饭,一般我们需要做以下重复性工作:同时,后台服务也需要编写校验规则,随着业务变动或者沟通不及时,前后端校验规则可能会存在不一致问题。所以「前后端共用校验规则逻辑」也应该纳入考虑。
综上,我们希望能减少重复性工作:通过配置自动生成表单模板,同时这个配置最好还能描述表单校验相关 ( 因为表单元素部分属性如min、max、required、pattern这些都会控制表单输入,保障校验 )
先通过一个简单的例子看下效果: Demo 、 Code
渲染结果
更多Demo
文档
然后,现在表单经常会通过JSON异步提交到服务端,所以技术选型如下:
最后,JSONSchema在表单描述上并非无所不能:
所以,我们参考了 angular schema form ,增加了 Form Definition 描述,用来补充扩展JSON Schema,它可以:
即使没定义Form Definition,内部在表单渲染部分,也会将JSONSchema转换成Form Definition,因为其结构更适合循环表单渲染
所以,整体架构如图
目前已经提供了 基础组件11个 (包含上传、编辑器等扩展组件)和 容器组件3个 ,未来还会根据情况继续增加,同时也支持自己扩展组件和规则。
vue3中vue.extend的替代方案
一个合格的web前端需要掌握哪些技术?
最基础的自然是JavaScript,HTML和css这三种语言。
首先了解下它们到底是什么。
HTML是用户看到的网页的骨架,比如你会发现当前页面分为左中右三个部分,其中还填充了不同的文字和;每个子部分还会继续细分,比如当前页面的中间部分下方有输入框等等。
CSS是网页展示的细节控制,比如你会发现有的文字是红底白色,有的子部分占了页面的二分之一宽,有的只占六分之一,有些部分需要用户进行某些操作(如点击,滑动)才会出现等等,这些就是有CSS来控制。
JavaScript是负责捕捉用户在浏览器上的操作,并与后端服务器进行数据交换的脚本语言。当用户在前端进行点击,输入等操作的时候,会触动绑定了该动作的JavaScript脚本,然后JavaScript收集数据,调用后端的api接口,再将后端返回的数据交给HTML和CSS渲染出来。
一个网页的HTML代码和CSS代码是可以直接在浏览器中查看的,你可以直接按F12,就能看到下图右侧的模块,左右侧红框就是代码与实际页面的对应关系。因此如果你看到某个网站的布局很不错,不妨点击F12,进行学习。
前端框架
然而,实际应用中,已经很少有正规的项目组直接用上述三种语言进行web 前端开发了,而是使用很多封装了这三种语言的框架,比如
Vue.js
,angular,react native等等。它们是来自谷歌和Facebook的大神项目组,基于自己的经验,封装了原生前端语言,实现了更多更复杂更酷炫的功能。因此,可以说,学会使用这些框架,能达到事半功倍的效果。
比如用了vue,它是自底向上增量开发的设计,其核心只关心图层,而且还可以与其他库或已存项目融合,学习门槛极其友好;另一方面,vue可以驱动单文件组件和vue生态系统支持的库开发的复杂单页应用。有了这个生态系统,可以说,vue是处在一个不断壮大,不断完善的欣欣向荣的状态。
网络通信协议
由于前后端分离的趋势,前端还需要了解很多网络通信协议的知识,这里不局限于/chrisvfritz/prerender-spa-plugin
三、前后端分离技术选型
- artTemplate + bootstrap(不推荐, 不算完全前后端分离)
- vue全家桶(推荐)
- react全家桶 (推荐,生态全)
店铺装修移动化前端方案
使用过CSS transition属性的童鞋们应该都清楚,当元素在过渡开始或者结束时的高度为auto时,动画是不生效的;那么如何才能实现元素高度的改变动画效果呢?本篇文章将为大家提供一个基于Vue3的非常简洁的解决方案。要实现高度的改变动画,我们需要在动画进行之前为元素设置准确的高度。
当元素由可见变为隐藏状态时,我们需要先获取元素的计算高度,将其设置到style属性上,然后执行一个触发浏览器渲染引擎重绘的动作,然后再将高度设置为0,这样高度的改变动画就会正常进行。
当元素由隐藏变为可见状态时,我们需要先将高度设置为auto,然后获取元素的计算高度,再将高度设置为0,然后执行一个触发浏览器渲染引擎重绘的动作,然后再将高度设置为计算高度,这样高度的改变动画就会正常进行。
现在,根据以上实现原理分析,我们创建一个高度的改变动画通用组件CollapseTransition.vue。该组件非常简单,仅需30多行代码。我几乎每行代码都有注释,大家应该能看懂吧?
以上就是实现高度的改变动画的通用组件源码,童鞋们理解了吗?是不是非常简单?现在,我们实现折叠面板组件。使用过element-ui这样的UI库的童鞋们应该都知道,折叠面板是由两个组件折叠面板Collapse和折叠面板项CollapseItem组合而成;
现在,我们先实现CollapseItem.vue组件。为了节省篇幅,我将源码中的空行全部去掉了,缩进比较规范,自认为可读性还行;源码如下,一共30多行,我直接在源码中添加了注释,就不过多解释了。
这是CollapseItem.vue组件的样式。
现在,我们实现Collapse.vue组件。该组件仍然只有30多行,大家理解起来应该很轻松,我就直接在源码里添加注释作为讲解了;
以上就是折叠面板组件的实现。包括折叠动画组件,一共仅需不到150行代码,是不是非常简单?童鞋们都理解了吗?不管有什么疑问,童鞋们都可以问我。感谢阅读!
参考淘宝的移动店铺装修功能,只支持Chrome和UC浏览器,所以经过产品同意,可以不考虑兼容性的问题,也意味着可以选择更多。约两周
手机端预览效果
因为这个项目功能比较独立,所以迁入fis项目进行构建。同时考虑到涉及交互还比较多,所以参考使用框架来帮助我们更好的完成开发。考虑开发周期,经过初步筛选,决定入坑Vuejs。
我们这里使用这个框架主要是拿它来实现需求中手机端的预览效果:把手机端预览中的每个模块都当成component进行组装,通过改变数据来控制展示(拖拽功能即多塞了一条数据,改变属性就相当于改变其中一个数据)。
备份
备份功能也可以使用预览的相同机制实现。
表单功能
至于表单部分功能比较多,可能还是要使用现有的组件来完成部分功能(如选择服务)。
扩展
以后扩展其他模块的话,其实也就相当于多注册几个component,扩展起来比较随意,也比较独立。
其他问题
今天关于“vue seo解决方案”的讲解就到这里了。希望大家能够更深入地了解这个主题,并从我的回答中找到需要的信息。如果您有任何问题或需要进一步的信息,请随时告诉我。