• Vue学习


    vue配置

    • Babel 将ES6转换成浏览器能识别的ES%
    • TypeScript js超集,vue3.0以后使用ts编写
    • Router 路由
    • vuex
    • CSS Pre-processors css解析器
    • Linter / Formatter 文本规范
    • router路由有history与hash模式
      • hash模式:当前浏览器访问都有#
      • history模式:不需要#,但后端需要服务器支持

    项目目录结构

    • node-model 放置依赖
    • public 放置入口公共依赖
    • src 开发目录
    • package.json 项目配置文件
      • "scripts": {} vue脚手架启动和打包
      • "dependencies":{} 打包完后依赖的文件
      • "devDependencies":{} 开发环境的依赖,打包后使用的生产环境就不需要了
    • vue.config.js 跨域处理,定义全局变量,按需打包等需求都可在此处配置
      • module.exprots ={ devServer: { port:8080,//端口 host:'localhost',//服务ip地址 open:true//配置浏览器自动访问,启动服务后会自动打开浏览器 proxy: //配置跨域}}

    Xxx.vue

    • <template></template> html模板

    • <script> </script> js脚本,

      • export default{} 其中的data(){return {}} 返回json数据给template

      • 承上,created(){axios.get('url',callback)}需配置 向服务器发送ajax异步请求(vue add axios),把回调函数中收到的数据写入同级的data方法中,data方法将数据返回给template

      • method:{} 函数定义template中的事件,如翻页

    • <style></style> css样式

    原理

    • router/index.js ,引入view目录下的视图进行映射,相当于servlet中的web.xml,将view/*下的Xxx.vue映射到App.vue

    • view/*下的所有视图在App.vue上切换

    • App.vue上面是不同的view下的视图,下层是components下的视图。App.vue充当的是localhost:8080 层次

    跨域(两种解决方案)

    1. 后端SpringBoot解决

      • 实现WebMvcConfigurer接口,重写addCorsMappings(),进行注册
    2. 前端

    插件

    • axios :使用ajax需要配置的插件

    nginx

    • 服务
      • 启动服务。./nginx
      • 正常关闭服务。./nginx -s quit
      • 强制关闭服务。./nginx -s stop
      • 重新加载配置文件。./nginx -s reload

    Vue 集成 Element UI

    Element UI 后台管理系统主要的标签:

    • le-container: 构建整个页面框架

    • el-aside:构建左侧菜单

    • el-menu:左侧菜单内容,常用属性

    • el-main:中间展示数据的区域,内容是view下的自定义的页面

      • default-openeds 默认展开的菜单,通过菜单的 index 值来关联
      • default-active 默认选中的菜单,通过菜单的 index 值来关联
    • el-submenu:可展开的子级菜单,常用属性:

      • index:菜单的下标,文本类型,不能是数值类型
    • template:对应的 el-submenu 的菜单名,两者相辅相成

    • i:设置菜单图标,通过 class 属性设置。

      • el-icon-message
      • el-icon-setting
      • el-icon-menu
    • el-menu-item:菜单的子节点,不可再展开,常用属性:

      • index:菜单的下标,文本类型,不能是数值类型

    Vue router 来动态构建左侧菜单

    • 导航1
      • 页面1
      • 页面2
    • 导航2
      • 页面3
      • 页面4
    1. 标签添加 router 属性,才能将每个路由与页面跳转链接绑定
    2. 页面中添加 标签,它是一个容器,动态渲染你选择的 router
    3. 标签的 index 值就是要跳转的 router

    实现前后端表单查询展示

    1. table组件 ,及分页组件

    2. 在export default{ method:{}}中定义翻页事件

    3. 在export default{created(){}}方法中向服务器发送异步请求,将回调数据封装至export default{data(){return{}}} 中

    4. 后端对findAll()方法传入 PageRequest 参数,将会返回分页查询数据

    • 新概念
      • Vue 表单 :page-size(每页显示的行数):total(总记录数) 属性结合,自动算出总页数,并实现分页逻辑
      • @click 点击事件,@current-change 翻页事件

    实现添加数据功能

    • 前端
      • :module 属性,绑定数据:rules 绑定校验规则

    注意

    1. export default{} 中调用函数常会用到this,是个未显示声明的隐示对象,默认指的是当前的Xxx.vue对象实例,但在回调函数中,this指的是包含回调函数的函数方法,注意区分

    2. 重定向

      • router包下路由重定向 redirect:'跳转到的path名'
    const routes = [
        {
            path: '/',
            name: '品牌管理',
            component:Index,
            redirect: '/brandManager',
    		}]
    
    - 具体页面绑定事件转发。在export default{}中的Method:[]中为事件绑定跳到具体页面 `_this.$router.push('/brandManager')`
    
    - `router` 与`route` ,`router` 是所有Xxx.vue页面的路由调用者,可以用`$router.push()`进行页面跳转(path),传参(query) 。`route` 是具体Xxx.vue对象,可以用`$route` 获取具体页面的属性,或者接收`$router` 传来的参数,调用this.$route.query.id
  • 相关阅读:
    Linux文件及目录查找
    英语单词independent
    英语单词omitting
    英语单词deploy
    英语单词debug
    线程
    进程
    操作系统历史
    分布式爬虫
    爬虫基础
  • 原文地址:https://www.cnblogs.com/luckyCoder/p/12733107.html
Copyright © 2020-2023  润新知