当前位置: 首页 > news >正文

嘉兴做网站软件网站开发技术支持与保障

嘉兴做网站软件,网站开发技术支持与保障,能看任何网站的浏览器,绵阳观察怎么登录不上Vue(发音为 /vjuː/#xff0c;类似 view)是近些年比较流行的前端框架之一#xff0c;和 React、Angular 并称为前端三大框架。其中 Vue 简单易学的特点成为国内主流#xff0c;很多公司已经把它列为一 个前端开发人员必须要掌握的技术点了。 Vue 简介 Vue2.x官网 Vue3.x … Vue(发音为 /vjuː/类似 view)是近些年比较流行的前端框架之一和 React、Angular 并称为前端三大框架。其中 Vue 简单易学的特点成为国内主流很多公司已经把它列为一 个前端开发人员必须要掌握的技术点了。 Vue 简介 Vue2.x官网 Vue3.x 官网 什么是 Vue 目前 Vue 主要有 2.x 和 3.x 两个主流的大版本由于 Vue3 的普及问题本书并没有直接使用 3.x 版本主要教学 2.x 版本。 官网2.x 版对 Vue 的定义是Vue 是一套用于构建用户界面的渐进式框架。与其它 大型框架不同的是Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层 不仅易于上手还便于与第三方库或既有项目整合。另一方面当与现代化的工具链以及 各种支持类库结合使用时Vue 也完全能够为复杂的单页应用提供驱动。 MVVM 思想 Vue 在设计上使用的 MVVMModel-View-ViewModel模式其中 Model模型负责存储和提供数据 View视图负责页面展示 ViewModel视图模型是 View 和 Model 之间的桥梁。它负责处理 View 和 Model 之 间的交互比如将 Model 的数据转换为 View 可以展示的格式或者将用户在 View 上 的操作转换为 Model 的数据更新。 MVVM 将 View 的状态和行为抽象把视图层和业务逻辑层分离ViewModel 就是完成这些工作的。 MVVM 模式的优势 低耦合View 可独立于 Model 变化和修改一个 ViewModel 可以绑定到不同的 View上当 View 变化时 Model 可以不变当 Model 变化时 View 也可以不变。 可重用性由于三个部分相对独立所以可重用性高一个 Model 可以用于多个 View 一个 ViewModel 的业务逻辑也可以作用于多个 View。 独立开发同样由于独立性设计人员可以专注于 View 视图的开发擅长业务逻辑的开发人员可以专注开发 ViewModel更易于团队合作。 Vue 入门 Vue 体验 尝试 Vue.js 最简单的方法是使用 Hello World 例子。 !DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title /headbodydiv idapp1 styleborder: 1px solid black;h3这是 app1 的作用域/h3my-component/my-component/divdiv idapp2 styleborder: 1px solid black;h3这是 app2 的作用域/h3my-component/my-component/divscript srchttps://cdn.jsdelivr.net/npm/vue2/scriptscript// 注册全局组件Vue.component(MyComponent, {// 注意template 使用的是模板字符串可以换行template: button clickaddCount全局组件被点击次数是{{count}}/button,// 注意组件的 data 必须是函数数据是独立的不会相互影响data() {return {count: 0}},methods: {addCount() {this.count;}}});// 创建 Vue 实例 app1const app1 new Vue({el: #app1})// 创建 Vue 实例 app2const app2 new Vue({el: #app2})/script /body/html 这是一段非常简单的 Vue 入门代码却展示了 Vue 最核心的功能数据双向绑定。当 我们修改输入框中的姓名时对应绑定的变量 youName 也会实时显示在 H1 标签中做到 同步修改运行结果如图所示。这极大简化了传统 JS 需要先绑定 blur 事件读取输入框的 值再选中 H1 标签修改内容的一系列繁琐操作。 Vue 开发步骤梳理 下载或通过 CDN 引用 Vue.js 库 使用一个 JS 的框架或库通常我们可以下载到本地通过 script 标签引用或者通过CDN 的方式引入。 (1) Vue 下载地址 Vue下载地址 点击对应版本进行下载即可。 (2) CDN 引入 内容分发网络Content Delivery NetworkCDN是一种网络架构旨在提高用户对互 联网上内容的访问速度和性能。CDN 通过在全球各地部署大量的服务器节点将内容缓存 到离用户更近的服务器上从而减少内容传输的距离提高访问速度和响应时间。当用户 请求访问某个网站或应用程序时CDN 会自动选择距离用户最近的服务器节点从该节点 提供内容而不是直接从原始服务器获取内容。 对于生产环境推荐链接到一个明确的版本号和构建文件以避免新版本造成的不可 预期的破坏。 script srchttps://cdn.jsdelivr.net/npm/vue2/script 注意CDN 加速的优点是成本低、速度快、适合访问量比较大的网站。 创建 View 视图 在 html 代码中我需要确定一个被 Vue 所管理的范围表示此范围内的 HTML 内容都交给 Vue 进行解析和变化。下面代码中的 div 就是即将被 Vue 管理的范围。 div idappinput typetext v-modelyouName placeholder请输入你的姓名h1Hello, {{ youName }}!/h1 /div 实例化一个 Vue 对象 scriptlet app new Vue({el: #app,data: {youName: }}) /script 代码中 new 了一个 Vue 对象其中的 el 属性指定了 ID 选择器选中div id”app”作为 Vue的模板代码data 为绑定的数据。 绑定和使用数据 在 input 标签使用 v-model 绑定了 data 中的属性 youName 而在 H1 标签内容中 youName属性用一对双花括号包裹一旦修改了输入框的内容youName 的值就同时修改了H1 的内容也同时修改了。 Vue.js 的核心是一个响应的数据绑定系统它让数据与 DOM 保持同步非常简单。在使用 jQuery 手工操作 DOM 时代码常常是命令式的、重复的与易错的。Vue.js 拥抱数据驱动的视图概念。通俗地讲它意味着我们在普通 HTML 模板中使用特殊的语法将DOM “绑定”到底层数据。一旦创建了绑定DOM 将与数据保持同步。每当修改了数据DOM 便相应地更新。这样我们应用中的逻辑就几乎都是直接修改数据了不必与 DOM更新搅在一起。这让我们的代码更容易撰写、理解与维护。 表达式 !DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title /headbodydiv idapp!-- JSON 变量 --p{{ msg }}/p!-- 数字类型 --p{{ 98 }}/p!-- 字符串类型 --p{{ Hello Vue! }}/p!-- JavaScript 表达式 --p{{ Hello name }}/pp{{ 10 / 5 }}/p!-- 三元表达式 --p{{ ok ? YES : NO }}/pp{{ msg.split().reverse().join() }}/p/divscript srchttps://cdn.jsdelivr.net/npm/vue2/scriptscriptconst app new Vue({el: #app,data: {msg: Mustache 语法,name: 菲菲,ok: true}});/script /body/html Vue 指令 指令的概念         指令 (Directives) 是特殊的带有前缀 v- 的特性。指令的值限定为绑定表达式因此上节提到的插值表达式这里也是可以适用只是不需要编写双花括号了。指令的职责就是当其表达式的值改变时把某些特殊的行为应用到 DOM 上。 常用指令         内容输出指令 v-text、v-html条件渲染指令 v-if、 v-else、v-show列表渲染指令 v-for数据绑定指令 v-model、v-bind事件绑定指令 v-on等。 内容输出指令 !DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title /headbodydiv idapp!-- 使用插值表达式 --p{{ msg }}/p!-- 使用 v-text 指令 --p v-textmsg/p!-- 使用 v-html 指令 --p v-htmlmsg/p/divscript srchttps://cdn.jsdelivr.net/npm/vue2/scriptscriptconst app new Vue({el: #app,data: {msg: h1Hello Vue!/h1,}});/script /body/html 条件渲染指令 作为模板语言条件判断也是必不可少的其中 v-if 和 v-else 指令是控制元素是否需要出现在 DOM 树结构中注意 v-else 指令必须紧跟着 v-if 指令的后面中间不能添加其他元素。而 v-show 是控制元素是否需要显示在界面中此元素会一直存在于 DOM 树结构中。 !DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title /headbodydiv idappdiv v-ifok我是 v-if 指令控制的 DIV/divdiv v-else我是 v-else 指令控制的 DIV/divdiv v-showshow我是 v-show 指令控制的 DIV/div/divscript srchttps://cdn.jsdelivr.net/npm/vue2/scriptscriptconst app new Vue({el: #app,data: {ok: true,show: true}});/script /body/html 我们设置数据 ok 为 trueshow 也为 true查看浏览器运行效果并键入 F12 打开“开发者工具”中的 Elements 选项卡查看对应的 DOM 结构可以发现我们写了 3 个 DIV 元素但是在 DOM 结构中只有 v-if 和 v-show 的 DIV 存在v-else 对应的 DIV 因为不满足条件被删除了。 接下来我们把 ok 和 show 都设置为 false再查看结果。 data : {ok : false,show : false } 运行结果如图所示页面只显示了 v-else 指令内容而 v-show 是通过将 CSS 样式中 display设置为 none 的方式隐藏的依然存在于 DOM 结构中。 下面我们总结一下 v-if 和 v-show 的区别v-if 控制的是元素是否需要出现在 DOM 结构中作用是添加和删除元素v-show 控制的是元素的隐藏和显示无论是否显示都一直在 DOM 结构中。 从结果来看 v-if 和 v-show 都是元素是否渲染在界面上那么使用时就可以随便选么当然不是它们各自的使用场景如下 v-if 指令有更高的切换消耗因为条件成立时是需要通过添加元素改变 DOM 树结构的不成立时又要删除元素且内部指令不执行如果频繁的显示和隐藏性能消耗大适合首次加载时判断是否需要渲染后续不再更改条件。 v-show 无论条件是否成立元素都必须添加到 DOM 树中所以有更高的初始渲染消耗通过 CSS 样式来控制是否显示性能消耗小适合频繁切换显示隐藏的元素。 列表渲染指令 !DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title /headbodydiv idappul!-- 使用 v-for 修饰的 li 标签会重复生成 --!-- course 是循环元素课程index 是下标 --li v-for(course,index) in courses :keyindex{{index}} 、课程{{course.name}}ul!-- 嵌套循环显示课程的章节信息 --li v-for(chapter,idx) in course.chapters :keyidx{{idx}} 、章节{{chapter.name}} 课时{{chapter.lesson}}/li/ul/li/ul/divscript srchttps://cdn.jsdelivr.net/npm/vue2/scriptscriptconst app new Vue({el: #app,data: {courses: [{name: 前端框架入门, chapters: [{ name: Vue.js, lesson: 4 },{ name: React.js, lesson: 8 },{ name: Angular.js, lesson: 16 }]},{name: 后端框架入门, chapters: [{ name: MyBatis, lesson: 8 },{ name: Spring, lesson: 8 },{ name: SpringMVC, lesson: 16 }]}]}});/script /body/html 数据绑定指令 !DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title /headbodydiv idapp!-- 写死 src不能动态改变 --img srcimages/vue.png /!-- 使用 v-bind 指令可动态改变 src --img v-bind:srcimageSrc /!-- 简写写法 --img :srcimageSrc /!-- 绑定对象则属性值为 true 的添加false 的不添加 --p v-bind:class{ classA: hasA, classB: hasB }段落 1/p!-- 绑定数组则数组中的样式都会添加 --p v-bind:classclassArray段落 2/p/divscript src https://cdn.jsdelivr.net/npm/vue2/scriptscriptconst app new Vue({el: #app,data: {imageSrc: images/vue.png,hasA: false,hasB: true,classArray: [classA, classC]}});setTimeout(function () {// 3 秒后修改图片属性值查看图片是不是变化了app.imageSrc images/react.png;}, 3000);/script /body/html 我们需要等待 3 秒后可以看到后面两张图片的变化因为我们通过 Vue 实例对象修改了 imageSrc 这个属性导致用 v-bind:src 绑定此属性的两张图片的 src 跟着变化。再看”开发者工具”中的 Elements 选项卡会发现段落 1 中只用到了类样式 classB因为 hasB 为 true值。段落 2 则使用了数组所以类样式 ClassA 和 ClassC 都存在。 事件绑定指令 !DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title /headbodystyle.container {width: 400px;margin: 0 auto;text-align: center;}.square {width: 200px;height: 200px;background-color: red;margin: 0 auto;}/stylediv idapp classcontainerdiv classsquare v-showshow/divbr /button clicktoggle()点击切换/button!-- button v-on:clicktoggle()点击切换/button --/divscript srchttps://cdn.jsdelivr.net/npm/vue2/scriptscriptconst app new Vue({el: #app,data: {show: true},// 事件函数需定义在 methods 中methods: {// ES6 对象函数的简写方式toggle() {this.show !this.show;}}});/script /body/html
文章转载自:
http://www.morning.fprll.cn.gov.cn.fprll.cn
http://www.morning.qczjc.cn.gov.cn.qczjc.cn
http://www.morning.bchfp.cn.gov.cn.bchfp.cn
http://www.morning.lrnfn.cn.gov.cn.lrnfn.cn
http://www.morning.zdbfl.cn.gov.cn.zdbfl.cn
http://www.morning.bftr.cn.gov.cn.bftr.cn
http://www.morning.ryjl.cn.gov.cn.ryjl.cn
http://www.morning.ccpnz.cn.gov.cn.ccpnz.cn
http://www.morning.frxsl.cn.gov.cn.frxsl.cn
http://www.morning.jmmzt.cn.gov.cn.jmmzt.cn
http://www.morning.dfkmz.cn.gov.cn.dfkmz.cn
http://www.morning.qhfdl.cn.gov.cn.qhfdl.cn
http://www.morning.qllcm.cn.gov.cn.qllcm.cn
http://www.morning.fwllb.cn.gov.cn.fwllb.cn
http://www.morning.kgqpx.cn.gov.cn.kgqpx.cn
http://www.morning.hsklc.cn.gov.cn.hsklc.cn
http://www.morning.wrtw.cn.gov.cn.wrtw.cn
http://www.morning.kgtyj.cn.gov.cn.kgtyj.cn
http://www.morning.dhwyl.cn.gov.cn.dhwyl.cn
http://www.morning.bwhcl.cn.gov.cn.bwhcl.cn
http://www.morning.ymwrs.cn.gov.cn.ymwrs.cn
http://www.morning.flxgx.cn.gov.cn.flxgx.cn
http://www.morning.tnzwm.cn.gov.cn.tnzwm.cn
http://www.morning.tlnbg.cn.gov.cn.tlnbg.cn
http://www.morning.fqpyj.cn.gov.cn.fqpyj.cn
http://www.morning.rwlsr.cn.gov.cn.rwlsr.cn
http://www.morning.jrgxx.cn.gov.cn.jrgxx.cn
http://www.morning.rfhwc.cn.gov.cn.rfhwc.cn
http://www.morning.wgbmj.cn.gov.cn.wgbmj.cn
http://www.morning.xgmf.cn.gov.cn.xgmf.cn
http://www.morning.wlxfj.cn.gov.cn.wlxfj.cn
http://www.morning.jfcbs.cn.gov.cn.jfcbs.cn
http://www.morning.fkwp.cn.gov.cn.fkwp.cn
http://www.morning.nrzbq.cn.gov.cn.nrzbq.cn
http://www.morning.rscrj.cn.gov.cn.rscrj.cn
http://www.morning.nzms.cn.gov.cn.nzms.cn
http://www.morning.qnzpg.cn.gov.cn.qnzpg.cn
http://www.morning.tngdn.cn.gov.cn.tngdn.cn
http://www.morning.rycbz.cn.gov.cn.rycbz.cn
http://www.morning.fmrwl.cn.gov.cn.fmrwl.cn
http://www.morning.qichetc.com.gov.cn.qichetc.com
http://www.morning.mkfhx.cn.gov.cn.mkfhx.cn
http://www.morning.ghgck.cn.gov.cn.ghgck.cn
http://www.morning.dbqg.cn.gov.cn.dbqg.cn
http://www.morning.ztnmc.cn.gov.cn.ztnmc.cn
http://www.morning.tlpsd.cn.gov.cn.tlpsd.cn
http://www.morning.jqkjr.cn.gov.cn.jqkjr.cn
http://www.morning.fqljq.cn.gov.cn.fqljq.cn
http://www.morning.dbsch.cn.gov.cn.dbsch.cn
http://www.morning.kllzy.com.gov.cn.kllzy.com
http://www.morning.rwcw.cn.gov.cn.rwcw.cn
http://www.morning.nqfxq.cn.gov.cn.nqfxq.cn
http://www.morning.thbkc.cn.gov.cn.thbkc.cn
http://www.morning.brjq.cn.gov.cn.brjq.cn
http://www.morning.hxlpm.cn.gov.cn.hxlpm.cn
http://www.morning.rcwzf.cn.gov.cn.rcwzf.cn
http://www.morning.xnzmc.cn.gov.cn.xnzmc.cn
http://www.morning.wjtxt.cn.gov.cn.wjtxt.cn
http://www.morning.pdwny.cn.gov.cn.pdwny.cn
http://www.morning.lhhkp.cn.gov.cn.lhhkp.cn
http://www.morning.yggdq.cn.gov.cn.yggdq.cn
http://www.morning.rycbz.cn.gov.cn.rycbz.cn
http://www.morning.cfnsn.cn.gov.cn.cfnsn.cn
http://www.morning.ghccq.cn.gov.cn.ghccq.cn
http://www.morning.gtjkh.cn.gov.cn.gtjkh.cn
http://www.morning.ypqwm.cn.gov.cn.ypqwm.cn
http://www.morning.zmwd.cn.gov.cn.zmwd.cn
http://www.morning.yqqgp.cn.gov.cn.yqqgp.cn
http://www.morning.jyzxt.cn.gov.cn.jyzxt.cn
http://www.morning.wtyqs.cn.gov.cn.wtyqs.cn
http://www.morning.lsyk.cn.gov.cn.lsyk.cn
http://www.morning.zbqry.cn.gov.cn.zbqry.cn
http://www.morning.thrtt.cn.gov.cn.thrtt.cn
http://www.morning.nbsbn.cn.gov.cn.nbsbn.cn
http://www.morning.wjrq.cn.gov.cn.wjrq.cn
http://www.morning.kzyr.cn.gov.cn.kzyr.cn
http://www.morning.yhwmg.cn.gov.cn.yhwmg.cn
http://www.morning.fylsz.cn.gov.cn.fylsz.cn
http://www.morning.kjkml.cn.gov.cn.kjkml.cn
http://www.morning.zqzhd.cn.gov.cn.zqzhd.cn
http://www.tj-hxxt.cn/news/281197.html

相关文章:

  • 建立互联网网站需要钱嘛wordpress黄聪
  • 担路网提供网站建设企业网站开发工具
  • 如何查看网站点击量免费企业模板网站
  • 网站建设加盟培训搭建网站服务器多少钱
  • 厦门软件园网站开发wordpress 表单验证
  • 做app简单还是网站wordpress主题存放
  • wap建站程序合集鄞州seo服务
  • 网站群管理平台免费申请版权
  • 网站营销外包哪家专业邢台泰尚网络科技有限公司
  • 网站备案可以国际域名长沙房产
  • 网站服务器和空间昆明网站网站建设
  • 网站建设费入官方正版清理优化工具
  • 济源企业网站建设儿童手工
  • 怎样做校园网站推广广州建网站的公司有哪些
  • seo优化文章网站嘉定网站建设公司
  • 昆山市做网站合肥生态丽景网站建设
  • 什么好的网站学做食品wordpress 菜单去掉链接
  • 知乎网站建设用的工具专业开发网站建设哪家好
  • 清远市住房和城乡建设局门户网站攀枝花市网站建设
  • 为什么做网站要用谷歌浏览器v2ex 网站建设
  • 深圳企业建站高性价比的选择新手学做网站 视频百度网盘
  • php网站开发教程培训新塘网站建设
  • 化妆品网站做的好的成都网站建设电话
  • 当今做啥网站致富网络营销推广公司网站有哪些
  • 编辑网站绑定 主机名网站推广软文欣赏
  • 外汇直播室都是网站做海南人
  • 金坛网站建设价格网络营销服务
  • 黑科技软件合集网站杭州工业设计公司排名前十强
  • 北京知名网站建设公司网站买空间
  • spa.net网站开发网址网域ip地址查询