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

1688做网站需要多少钱网站建设后预期推广方式

1688做网站需要多少钱,网站建设后预期推广方式,网络科技有限公司网站,网站跨机房建设方案语法规则 前端渲染 渲染有几种方式#xff1a;原生js、js模板、Vue模板语法 原生js 使用字符串拼接 js模板语法 Vue.js 模板语法概述 Vue.js 是一个用于构建用户界面的渐进式框架#xff0c;其模板语法非常灵活和直观。Vue 的模板语法基于 HTML#xff0c;可以通过指令… 语法规则 前端渲染 渲染有几种方式原生js、js模板、Vue模板语法 原生js 使用字符串拼接 js模板语法 Vue.js 模板语法概述 Vue.js 是一个用于构建用户界面的渐进式框架其模板语法非常灵活和直观。Vue 的模板语法基于 HTML可以通过指令、插值和特殊属性来实现数据绑定和事件处理。以下是 Vue.js 2 的模板语法的主要概念和示例。 1. 插值Interpolation 插值用于在模板中显示数据可以使用双大括号 {{ }} 进行文本插值或者使用 v-bind 进行属性插值。 div idappp{{ message }}/pp v-bind:titletitleHover to see the title/p /divscript new Vue({el: #app,data: {message: Hello, Vue!,title: This is a title} }) /script2. 指令Directives 指令是带有 v- 前缀的特殊特性用来在模板中做响应式数据绑定。常用指令包括 v-if, v-for, v-show, v-model, v-bind, v-on 等。 条件渲染v-if, v-else-if, v-else div idappp v-ifseenNow you see me/pp v-elseNow you dont/p /divscript new Vue({el: #app,data: {seen: true} }) /script列表渲染v-for div idappulli v-foritem in items :keyitem.id{{ item.text }}/li/ul /divscript new Vue({el: #app,data: {items: [{ id: 1, text: Item 1 },{ id: 2, text: Item 2 },{ id: 3, text: Item 3 }]} }) /script事件处理v-on div idappbutton v-on:clicksayHelloClick me/button /divscript new Vue({el: #app,methods: {sayHello: function() {alert(Hello, Vue!);}} }) /script双向绑定v-model div idappinput v-modelmessage placeholderEdit mepMessage is: {{ message }}/p /divscript new Vue({el: #app,data: {message: Hello, Vue!} }) /script3. 修饰符Modifiers 修饰符是以半角句号 . 指明的特殊后缀用于指出一个指令应该以特殊方式绑定。例如.prevent, .stop, .capture, .self, .once, .native, .number, .trim。 div idappform v-on:submit.preventonSubmitbutton typesubmitSubmit/button/form /divscript new Vue({el: #app,methods: {onSubmit: function() {alert(Form submitted!);}} }) /script4. 计算属性和侦听器 计算属性用来对模板中复杂逻辑进行计算并返回结果类似于 data 属性但会基于其依赖项缓存结果。 div idapppReversed message: {{ reversedMessage }}/p /divscript new Vue({el: #app,data: {message: Hello, Vue!},computed: {reversedMessage: function() {return this.message.split().reverse().join();}} }) /script侦听器用于监听数据属性的变化并执行相应的操作。 div idappp{{ message }}/p /divscript new Vue({el: #app,data: {message: Hello, Vue!},watch: {message: function(newVal, oldVal) {console.log(Message changed from, oldVal, to, newVal);}} }) /script以上是 Vue.js 2 模板语法的基本介绍和一些示例代码。这些概念和指令使得 Vue.js 非常灵活和易于使用适用于各种规模的应用开发。 插值表达式指令事件绑定属性绑定样式绑定分支循环结构 指令 什么是指令 什么是自定义属性指令的本质就是自定义属性指令的格式以v-开始比如V-cloak v-clock指令用法 在频繁刷新的时候可能会出现插值表达式造成用户体验不好 !DOCTYPE html html langen headmeta charsetUTF-8titleVue/titlestyle typetext/css[v-clock]{display:none;}/stylemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappdiv v-clock{{msg}}/div /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script script// v-clock指令用法// 1.提供样式// [v-clock]{// display:none;// }// 2.在插值表达式所在的标签添加v-cloak指令var vm new Vue({el:#app,data:{msg:HelloWord}}); /script /body /html 使用v-clock就可以不显示插值表达式刷新页面直接出来数据 背后原理 先通过样式隐藏内容在内存中进行值的替换替换好之后在显示最终的结果。 v-text 纯文本信息 v-html(容易遭遇跨站脚本攻击) v-pre 填充原始信息 v-once:如果显示的信息后期不需要再修改可以使用可以提高性能。 v-model 双向绑定 MVVM设置思想 M(model) V(view) VM(View-Model) 重点是双向绑定 事件绑定 v-on指令语法 当然因为经常使用还提供一种简写方法 当然在vue中我们可以给时间绑定一个方法写在methods里面 !DOCTYPE html html langen headmeta charsetUTF-8titleVue/titlestyle typetext/css[v-clock]{display:none;}/stylemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappdiv{{num}}/divdivbutton v-on:clicknum增加/buttonbutton clicknum点击1/buttonbutton clickhandle点击1/buttonbutton clickhandle()点击1/button/div /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script scriptvar vm new Vue({el:#app,data:{num:0},methods:{handle:function (){//这里的this是vue的实例对象console.log(this)this.num}}}); /script /body /html 事件参数传递 1.如果时间直接绑定函数名称那末默认会传递事件对象作为时间函数的第一个函数 2.如果事件绑定函数调用事件对象必须作为最后一个参数显示传递必须对象名称必须$event button clickhandle($event)点击1/button事件修饰符 按键修饰符 自定义按键修饰符 全局config.keyCodes对象 Vue.config.keyCodes.f1 112; 自定义按键修饰符名字是自定义的但是对应的值必须是按键对应event对象中keyCode值 Vue.config.keyCodes.aaa 65 Vue动态处理属性 v-bind指令用法 跳转 缩写形式 跳转 !DOCTYPE html html langen headmeta charsetUTF-8titleVue/titlestyle typetext/css[v-clock]{display:none;}/stylemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappa v-bind:hrefurl百度/abutton clickhandle/button//v-model事件双向绑定其实就是使用了v-bind:value,和inputdiv{{msg}}/divinput typetext v-bind:valuemsg inputhandle /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script scriptvar vm new Vue({el:#app,data:{url:http://www.baidu.com,msg:hello},methods:{handle:function (event){//修改url地址this.urlhttps://www.imooc.com/;this.msg event.target.value;}}}); /script /body /html 样式绑定 控制类名 !DOCTYPE html html langen headmeta charsetUTF-8titleVue/titlestyle typetext/css.active{border: 1px solid red;width: 100px;height: 100px;}.error{background-color: orange;}/stylemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappdiv v-bind:class{active: isAcrive,error: isError}/divbutton clickhandle切换/button /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script scriptvar vm new Vue({el:#app,data:{url:http://www.baidu.com,msg:hello,isAcrive:true,isError:true},methods:{handle:function (){//控制isActive在true和false之间切换this.isAcrive !this.isAcrive;}}}); /script /body /html style样式处理 分支循环结构 v-ifv-elsev-else-fiv-show !DOCTYPE html html langen headmeta charsetUTF-8titleVue/titlestyle typetext/css[v-clock]{display:none;}/stylemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappdiv v-ifscore90优秀/divdiv v-else-ifscore90score80良好/divdiv v-ifscore80score60一般/divdiv v-else比较差/divdiv v-showflag11/divbutton clickhandle取反/button /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script scriptvar vm new Vue({el:#app,data:{score:76,flag:false},methods:{handle:function (){this.flag !this.flag}}}); /script /body /html 循环结构 在Vue中如果有对象遍历最好加上key这样的话就不会报错唯一的key !DOCTYPE html html langen headmeta charsetUTF-8titleVue/titlestyle typetext/css[v-clock]{display:none;}/stylemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappdiv水果列表/divulli v-foritem in fruits{{item}}/lili v-for(item,index) in fruits{{item ____ index}}/li/ul /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script scriptvar vm new Vue({el:#app,data:{fruits:[apple,organg,banana]},methods:{}}); /script /body /html Vue的常用特性 表单操作自定义指令计算属性过滤器监听器生命周期 表单操作 表单修饰符 number:转化为数值trim:去掉开始和结尾的空格lazy将input时间切换为change事件 !DOCTYPE html html langen headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappinput typetext v-model.numberageinput typetext v-model.trimtextinput typetext v-model.lazymsgdiv{{msg}}/divbutton clickhandle点击/button /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script scriptvar vm new Vue({el:#app,data:{age:,text:,msg:},methods:{handle:function (){console.log(this.age1)console.log(this.text)}}}) /script /body /html 自定义指令 !DOCTYPE html html langen headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappinput typetext v-focus /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script scriptVue.directive(focus,{inserted:function (el){//el表示指令绑定的元素el.focus();}})var vm new Vue({el:#app,data:{},methods:{}}) /script /body /html inserted是钩子函数当dom绑定的时候使用运行 !DOCTYPE html html langen headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappinput typetext v-colorsmsg /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script script typetext/javascript//自定义指令带参数Vue.directive(colors,{bind:function (el,bind){el.style.backgroundColor bind.value.color;//通过携带参数来控制指令的一些具体行为}});var vm new Vue({el:#app,data:{msg:{color:orange}},methods:{}}) /script /body /html 局部指令 !DOCTYPE html html langen headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappinput typetext v-colorsmsginput typetext v-focus /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script script typetext/javascript//自定义指令带参数var vm new Vue({el:#app,data:{msg:{color:orange}},methods:{},directives:{colors:{bind:function (el,bind){el.style.backgroundColor bind.value.color;//通过携带参数来控制指令的一些具体行为}},focus:{inserted:function (el){el.focus();}}}}) /script /body /html 局部指令应用范围是有所限制的全局指令是没有限制的 计算属性computed !DOCTYPE html html langen headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappdiv{{msg}}/divdiv{{reversString}}/div /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script scriptvar vm new Vue({el:#app,data:{msg:Hello },methods:{},//计算属性让模板变得更加简单computed:{reversString:function (){return this.msg.split().reverse().join()}}}) /script /body /html 计算属性computed和methods方法存在什么差异 ** 缓存特性在比较耗时的计算节省性能计算属性他是基于依赖来做缓存的当发布存在缓存机制。 计算属性依赖data 侦听器 数据变化时异步或者开销比较大 侦听器用法 !DOCTYPE html html langen headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappdivspan名/spanspaninput typetext v-modelfirstName/span/divdivspan名/spaninput typetext v-modellastName/divdiv{{msg}}/div /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script scriptvar vm new Vue({el:#app,data:{firstName:Jim,lastName:Green,msg:},watch:{firstName: function (val){this.msg val this.lastName;},lastName: function (val){this.msg this.firstName val;}}}) /script /body /html 监听器属性的方法必须和数据里面的方法名称一致这样的监听才可以实现 监听器应用场景 !DOCTYPE html html langen headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappdivspan用户名/spanspaninput typetext v-model.lazyuname/spanspan{{tip}}/span/div /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script script//1.采用监听器用户名称变化//2.调用后台接口验证//3.根据验证结果调整提示信息var vm new Vue({el:#app,data:{uname:,tip:},methods:{checkName:function (uname){//调用接口但是可以使用定时任务方式模拟接口调用var that this;setTimeout(function (){if (uname admin){that.tip 用户名存在请更换一个;}else{that.tip 用户名可以使用;}},2000)}},watch:{uname:function (val){//调用后台接口验证用户名合法性this.checkName(val);//修改提示信息this.tip 正在验证。。。;}},}) /script /body /html 过滤器 作用格式化数据比如将字符串格式化到首字母大写将日期格式化为指定的格式等。 自定义过滤器 !DOCTYPE html html langen headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappinput typetext v-modelmsgdiv{{ msg | upper}}/divdiv{{msg | upper | lower}}/divdiv :abcmsg| upper测试数据/div/div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script script//过滤器// Vue.filter(upper,function (val){// return val.charAt(0).toUpperCase()val.slice(1);// });// Vue.filter(lower,function (val){// return val.charAt(0).toLowerCase()val.slice(1);// });var vm new Vue({el:#app,data:{msg:},filters:{upper: function (val){return val.charAt(0).toUpperCase()val.slice(1);}}}); /script /body /html 带参数的过滤器 !DOCTYPE html html langen headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1.0 /head body div idappdiv{{date | format(yyyy-MM-dd)}}/div /div script srchttps://cdn.jsdelivr.net/npm/vue/dist/vue.js/script script//过滤器Vue.filter(format,function (val,arg){if (arg yyyy-MM-dd){var ret ;ret val.getFullYear()-(val.getMonth()1) - val.getDate();console.log(ret)return ret;}console.log(1)})var vm new Vue({el:#app,data:{date:new Date()},}); /script /body /html 生命周器 主要阶段 挂载(初始化相关属性) beforeCreatecreatedbeforeMountmounted 更新元素或组线的变更操作 beforeUpdateupdated 销毁销毁相关属性 beforeDestroydestroyed Vue实例产生会经过8个生命周期 Vue中对于数组的新概念 变异方法修改原始数据 push()pop()shift()unshift()splice()sort()reverse() 替换数组形成新的数组 filter()concat()slice() 变异方法都会影响到数组的原始数据替换方法不会影响到数组的原始数据他会形成一个新的数组。 修改响应式数据 Vue.set(vm.items,indexOfltem,newValue)vm.$set(vm.items,indexOfItem,newValue) 1.参数一表示要处理的数组名称 2.参数2表示要处理的数组索引 3.参数3表示要处理的数组的值
http://www.w-s-a.com/news/20856/

相关文章:

  • 网站建设招标方案模板上线啦 图谱智能网站
  • 龙口网站建设公司哪家好wordpress 上传类型
  • 做外贸主要看什么网站服务平台的宗旨
  • 宜昌营销型网站购买网站
  • 如何查询网站建设时间wordpress 框架解析
  • 网站建设年终总结网站建设公司顺义
  • 网页给别人做的 网站后续收费吗获取更多付费流量
  • 金融交易网站建设金融 网站建设
  • 长沙网站建设联系电话怎么做表格
  • 网站怎么做域名实名认证龙华网站 建设信科网络
  • 企业网站规划方案网站是做排行榜
  • 万维网网站个人申请网站
  • 我想做网站怎么做昆山网站建设 全是乱码
  • 单位做网站怎么做圣诞树html网页代码
  • 网页开发与网站开发企业网站托管服务常用指南
  • 一站式服务图片临沂做进销存网站
  • 鸣蝉智能建站标准物质网站建设模板
  • 电商网站建设技术员的工作职责商业网站制作价格
  • 网站html模板免费下载公司的网站建设费用入什么科目
  • 高中生做网站网页网页制作教程零基础学会
  • 做金融网站有哪些要求WordPress站内搜索代码
  • 济南网站怎么做seowordpress注册发邮件
  • 珠海网站设计平台东莞市手机网站建设平台
  • 网站开发文档合同怎么在wordpress导航条下方加入文字广告链接
  • 网站建设需怎么做有网站怎么做企业邮箱
  • 网站制作流程视频教程小程序多少钱一年
  • 暗网是什么网站花都网站建设哪家好
  • 贵州网站开发流程晋江论坛手机版
  • 网站建设丿金手指谷哥14阿里巴巴官网电脑版
  • 网站开发招聘信息匿名ip访问网站受限