03

268 阅读2分钟
  • 补充一些指令
    • v-bind:class="数据" 对象 数组
    • v-bind:style="数据" 对象 数组[{},{}]
    • v-cloak 解决插值表达式闪烁的问题
    • v-once 只是一次渲染
  • 过滤器
    • 作用:转换文本格式
    • 全局过滤器 在vue实例化之前定义
    • Vue.filter('formatTime',(v)=>{//处理文本 return '结果' })
    • {{time|formatTime}}
    • 局部过滤器 在选项中使用
    • filters:{formatTime(v){//处理文本 return '结果'}}
    • {{time|formatTime}}
    • 注意:支持传参 支持串联使用
  • 自定义指令
    • 在vue中操作dom方案:使用ref属性,操作dom vm.$refs.ref的属性值
    • 对于操作dom的业务封装成指令
    • 全局自定义指令:Vue.directive('focus',{inserted(){//渲染后操作dom}})
    • 局部自定义指令:directives:{focus:{inserted(){//渲染后操作dom}}}
    • 使用:v-focus 属性
  • 计算属性
    • 对于一些依赖于data数据的数据建议定义成计算属性
    • 计算属性:当前data属性改变时计算属性改变,会有数据缓存,当视图更新时不会重新计算
    • 定义计算属性:选项定义
    • computed:{newList(){ //依赖data属性得到新数据 返回数据 return 数据}}
  • 案例
    • 列表展示
    • 添加
    • 删除
    • 搜索
    • 没有出数据处理
    • 自动获取焦点

03-在vue中的发网络请求

  • 准备接口服务器,不建议使用express搭建服务器,使用json-server工具提高接口服务。
  • 发送ajax请求:
    • 使用原生XHR对象发请求 过于繁琐
    • 使用jquery的ajax函数去发送请求 过于冗余
    • vue-resource 是一个vue插件 停止维护 但是作者不推荐使用了。
    • 使用 在NODEJS中和在浏览器中都可以使用的网络请求插件 axios

04-json-server基本使用

  • 使用一个基于NODE的命令行工具 nodemon npm

  • 安装:npm i -g json-server 在任何目录任何终端 powershell cmd

  • 使用步骤:

    • 新建一个空目录
    • 在目录中 创建一个json文件 db.json
    • 在json文件中定义一个空对象
    • 在对象中对应键值对 brands:[]
    • 初始化数据 一个品牌对象
    • {
          "id": 1,
          "brandName": "奥迪",
          "createTime": "2020-10-10 10:10:10"
      }
      
    • 启动服务器在db.json目录 json-server --watch db.json 其他 -p 4000
    • 接口服务器特点:
      • 接口规则遵循 restful 规则
      • 支持cors(跨域解决方案) 支持jsonp(只能发get请求)

    cors:一个跨域解决方案,原理:在响应头中加入 'Access-Control-Allow-Origin','*'

    服务端代码: const express = require('express') const app = express() app.listen(4000, () => console.log('server ok')) // 接口 响应 ok 字符 // 使用一个中间件 cors 包 npm i cors app.get('/', (req, res) => { //开启跨域资源访问的权限 res.setHeader('Access-Control-Allow-Origin','*') res.send('ok') })