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

php网站留言板漏洞毕业设计做网站有什么好处

php网站留言板漏洞,毕业设计做网站有什么好处,韩国出线了吗,高大上网站设计1.创建Vue实例,初始化渲染的核心 准备容器引包创建Vue实例new Vue() el用来指定控制的盒子data提供数据 2.插值表达式 作用利用表达式插值,将数据渲染到页面中 格式{{表达式}} 注意点 表达式的数据要在data中存在表达式是可计算结果的语句插值表达式…

1.创建Vue实例,初始化渲染的核心

  • 准备容器
  • 引包
  • 创建Vue实例new Vue()
    • el用来指定控制的盒子
    • data提供数据

2.插值表达式

作用利用表达式插值,将数据渲染到页面中
格式{{表达式}}
注意点

  • 表达式的数据要在data中存在
  • 表达式是可计算结果的语句
  • 插值表达式不能写在标签里面

3.Vue的相关指令

3.1 v-前缀的标签属性

  • v-html="表达式"设置当前标签元素的innerhtml
  • v-show="表达式"表达式的值为true时显示,false隐藏 原理是display:none适用于频繁切换隐藏场景
  • v-if="表达式"表达式的值为true时显示为false时隐藏 原理是创建或者移除元素节点适用于不频繁切换的场景
  • v-else=" “和v-else-if=” "辅助v-if进行判断渲染,需要紧挨着v-if一起使用
  • v-on可以简化为 @
    • v-on:事件名=“内联语句”
    • v-on:事件名="method中的函数名"methods里面的函数形式 fn(){}
      如果不用传参直接写函数名就可以,如果要传参就括号然后里面写参数
  • v-bind可以简化为
    • :属性名=“表达式”
    • **操作class属性 **
      • :class=“{a:true或者fasle或者判断trueorfalse的语句}” 适用于一个类名来回切换比如tab导航栏
      • class=“[类名1,类名2,类名2]”适用于批量删除或者添加类
<div id="app"><ul><li v-for="(item,index) in list" :key="item.id" @click="activeindex=index"><a :class={active:index==activeindex} herf="#">{{item.name}}</a></li></ul></div>
  • v-for=“(item,index) in 数组"适用于数据循环,多次渲染整个元素,主要针对数组,对象,数字
    如果不用index可以 ”item in 数组”
<ul>
<li v-for="(item,index) in list">{{item}}-{{index}}
</li>
</ul>   

在这里插入图片描述


案例- 列表渲染和删除功能

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><div id="app"><ul><li v-for="(item,index) in alist" :key="item.id"><span>{{ item.name }}</span><span>{{ item.author }}</span><button v-on:click="del(item.id)">删除</button></li></ul></div><script>const app=new Vue({el:'#app',data:{alist:[{id:1,name:'《红》',author:'曹'},{id:2,name:'《绿》',author:'吴'},{id:3,name:'《蓝》',author:'施'},]},methods:{del(id){this.alist=this.alist.filter(item =>item.id !== id)}}})<!--methods写错了而且后面多加了逗号一直报错-->Vue.config.productionTip=false</script>
</body>
</html>

v-for里面key的作用:作为唯一标识
注意key的值只能是字符串或者数字类型,推荐使用id,因为需要具有唯一性


  • v-model重要,双向数据绑定既可以获取表单内容也可以设置表单元素的内容
    • v-model=“表达式” 表达式和data里面的变量**双向联动 **
      如果有login和reset直接调用this.变量=''这样就可以reset了
      • 如果是表单输入框的话获取的就是输入的内容一般为字符,但是可以配合.trim和.number使用
      • 单选框 获取的是true or false
      • 多选按钮 获取的是选择项的value值一般会有value和name属性name用来同组相斥
      • 复选框 写在selection里获取的是option的value值option一般有value值
      • 文本域 获取的是文本值

案例- 列表的添加删除统计清空

<section id="app"><!-- 输入框 --><header class="header"><h1>小黑记事本</h1><input  placeholder="请输入任务" class="new-todo" v-model="todoname"/><button class="add" @click="add">添加任务</button></header><!-- 列表区域 --><section class="main"><ul class="todo-list"><li class="todo" v-for="(item, index) in list" :key="item.id"><div class="view"><span class="index">{{ index + 1 }}.</span> <label>{{ item.name }}</label><button @click="del(item.id)" class="destroy"></button></div></li></ul></section><!-- 统计和清空 --><footer class="footer" v-show="list.length>0"><!-- 统计 --><span class="todo-count">合 计:<strong> {{list.length}}</strong></span><!-- 清空 --><button class="clear-completed" @click="clear">清空任务</button></footer> </section><!-- 底部 --><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>const app = new Vue({el: '#app',data: {todoname:'',list: [{ id: 1, name: '跑步一公里' },{ id: 3, name: '游泳100米' }]},methods: {del (id) {// console.log(id) => filter 保留所有不等于该 id 的项this.list = this.list.filter(item => item.id !== id)},add(){if(this.todoname.trim()==''){alert("请输入值")return}this.list.unshift({id:+new Date(),name:this.todoname,})},clear(){this.list=[]}}})</script>

总结

一次添加多个内容-属性添加法

{
属性名:属性值,
属性名:属性值<!--最后一个可以不加逗号-->
<!--new Vue({})这里也是这么个意思-->
}

数组的方法积累

.filter(item=>item.id!=id) <!--这样完了之后一定要赋值原数组回去-->
.unshift()<!--如果里面有多个属性就是{}这个-->
.reduce((sum,index)=>>sum+item.score,0)<!--数组里某一项求值-->

字符串的方法积累

.trim()
<!--应用:1.可以用来去除前后的空格后判断是不是空字符串-->

时间戳的应用

+new Date()

我的错误和思维漏洞

  • 在data里面相互引用的时候不加this
  • 清空操作字符串就赋值’'数组就就赋值[ ]
  • 如果想实时动态改变值:就用@事件=“数值改变的表达式或者函数调用”
  • 表达式可计算的特性很重要,插值表达式不放在标签里面,其他就不用考虑了
  • params:里面的默认写法是属性名:属性值(后端规定)但是如果穿的是多个属性组成的对象,直接params:对象 就可以

3.2 指令修饰符

  • @keyup.enter=""键盘事件监听绑定回车键
  • v-model.trim=""双向互动绑定去除首尾空格
  • v-model.number=""双向互动绑定字转数字
  • @事件名.stop=""阻止冒泡
  • @事件名.prevent=“”*阻止默认行为 *例如a标签的跳转

4.Vue里面的各种属性

methods里面的函数形式 fn(){}

用途:发请求,事件触发
  • 在v-on=“”如果不用传参直接写函数名就可以,如果要传参就括号然后里面写参数
  • 如果在vue的其他地方和插值表达式 里面要用的话还是要加括号

computed里面的属性形式 f’n(){}

  • 和用data里面的其他值一样用这个f’n也就是当为属性在用,所以不管是vue的其他地方还是插值表达式都是f’n
  • 缓存特性以提升性能
  • 计算属性得出来的值是默认不能修改的,在任何地方修改都会报错,只有加上set方法之后才可以修改
computed:{
计算属性名字:{get(){return },set(修改的值value){}//当在外部有修改计算属性的行为的时候,就会触发这个set方法,并把修改的值赋值给value,然后可以对value进行相关的操作。
}

但是注意要用computed里面的某个属性里的修改的话就应该是 属性=‘修改值’(vue里面其他地方用还是要加this哦)

watch监视器

如果你写了某个数据的监视器,只要数据变化了,就会触发这个对应监视器
作用:可以根据数据的实时变化,来发送请求
little tips:用clearTimeout(a) const a=setTimeout()来实现防抖延迟执行 .

非整个对象的写法
在这里插入图片描述在这里插入图片描述
整个对象的监听写法
在这里插入图片描述
deep是深度监视就是对对象里面每一个属性都监视,immmediate是一进页面就翻译一次。

5.生命周期

konwlegde

在这里插入图片描述
生命周期钩子:在vue的生命周期里自动运行的函数,可以在这些函数里面运行自己的代码。
created:发初始化请求
mounted:dom操作

destroy是在关闭页面后执行的,可以用app.$destroy()将数据变成死数据
在这里插入图片描述

example-自动获取焦点

在这里插入图片描述

6.工程化开发

  • index.html提供vue所管理的容器
  • App.vue是根目录
  • components是子组件
  • main.js导入vue,App.vue,用render方法将App.vue动态渲染到 index.html在这里插入图片描述
http://www.yayakq.cn/news/185222/

相关文章:

  • 网站连接怎么做react企业网站模板
  • 中国建设网站简州新城土地整改项目珠市口网站建设
  • 凡客网站建站教程手机响应式网站开发模板之家
  • wordpress建站社区家居网站建设费用
  • 电商网站增加客户南京网站开发南京乐识赞
  • 网站建设的编程语言国家政务服务平台官网
  • 网站网页设计前言怎么在导航网站上做推广
  • 霍尔果斯建设局网站有哪些做ppt网站
  • 网站模板html个人证书查询网入口免费
  • 医药建设网站个人社保缴费记录查询
  • 旅游网站制作方案电脑配件经营网站的建设论文
  • 怎样做网站发帖.net网站开发优点
  • 广东网站设计网站设计方案案例分析
  • 全网展示型网站建设东圃做网站
  • 盘锦网站建设哪家好哈尔滨市工程建设网
  • 电子商务网站规划原则wordpress数据库加速
  • 做网站窗体属性栏设置文字居中兰州最新消息今天又封了
  • 什么是网站内容建设服务器和域名有免费申请
  • html5网站开发的源码徐州网站建设哪家好薇
  • 北京网站优化实战网站平台免费
  • 江油建设局网站做盗版电影网站
  • 做网站广告联盟坑梓网站建设咨询
  • 应该知道的网站福州制作公司网站
  • 知乎网站怎么做推广深圳工业设计公司有哪些
  • 建设农产品网站总结ppt58同城做网站要钱吗
  • 山东公司网站建设nodejs做后端的网站
  • 做任务换流量的网站网站建设与维护心得
  • 做网站需要用到哪些开发软件小区服务网站怎么做
  • 西宁网站建设方案wordpress放谷歌代码
  • 用织梦做的网站好还是cmswordpress 软件