Vue-笔记(5)

本文围绕Vue展开,介绍了父子组件的数据和方法传递。父组件通过属性绑定传数据,用事件绑定传方法,子组件props数据只读。还提及localStorage仅支持字符串数据,ref可获取DOM元素和组件。此外,详细说明了vue-router路由模块的安装、使用,包括路由对象创建、参数传递及路由嵌套等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、父子组件数据传递
    父组件可在引用子组件时, 通过 属性绑定(v-bind:) 的形式, 把 需要传递给 子组件的数据,以属性绑定的形式,传递到子组件内部,供子组件使用。

<com1 v-bind:parentmsg="msg"></com1>

    (1)子组件中,默认无法访问到 父组件中的 data 上的数据 和 methods 中的方法
    (2)子组件中的 data 数据,并不是通过 父组件传递过来的,而是子组件自身私有的
        子组件通过 Ajax ,请求回来的数据,都可以放到 data 身上;
    (3)组件中的 所有 props 中的数据,都是通过 父组件传递给子组件的 props 中的数据,都是只读的,无法重新赋值
2、父子组件方法传递
    (1)父组件向子组件 传递 方法,使用的是 事件绑定机制; v-on, 当我们自定义了 一个 事件属性之后,那么,子组件就能够,通过某些方式,来调用 传递进去的 这个 方法了。
    (2)

<com2 @func="show"></com2>
var vm = new Vue({
    el: '#app',
    data: { ... },
    methods: {
        show(data){ ... }
    },
    components: {
        com2
        // com2: com2
    }
});
var com2 = {
    template: '...',
    data(){
        return { ... };
    },
    methods: {
        myclick(){
        this.$emit('func', '参数'); // emit 英文原意: 是触发,调用、发射的意思
        }
    }
};


3、localStorage 只支持存放字符串数据。
4、ref 获取DOM元素和组件
    ref  是 英文单词 【reference】   值类型 和 引用类型  referenceError

<h3 id="myh3" ref="myh3">哈哈哈, 今天天气太好了!!!</h3>
console.log(this.$refs.myh3.innerText);

5、路由
    (1)装 vue-router 路由模块
    (2)router-link 默认渲染为一个 a 标签

<router-link to="/login" tag="span">登录</router-link>
<router-link to="/register">注册</router-link>

    (3)router-view
    router-view --> vue-router 提供的元素,专门用来 当作占位符的,将来,路由规则,匹配到的组件,就会展示到这个 router-view 中去,所以可把 router-view 当做一个占位符。

<transition mode="out-in">
    <router-view></router-view>
</transition>

    (4)创建一个路由对象,当导入 vue-router 包之后,在 window 全局对象中,就有了一个 路由的构造函数,叫做 VueRouter
    在 new 路由对象的时候,可以为 构造函数,传递一个配置对象。

// 组件的模板对象
var login = {
    template: '<h1>登录组件</h1>'
};
var register = {
    template: '<h1>注册组件</h1>'
}
var routerObj = new VueRouter({
    routes: [ // 路由匹配规则 
            { path: '/', redirect: '/login' },
            { path: '/login', component: login },
            { path: '/register', component: register }
    ]
});
// path --> 表示监听 哪个路由链接地址;
// component --> path对应展示的组件,component 的属性值,必须是一个 组件的模板对象, 不能是 组件的引用名称。
var vm = new Vue({
    el: '#app',
    data: {},
    methods: {},
    router: routerObj // 将路由规则对象,注册到 vm 实例上,用来监听 URL 地址的变化,然后展示对应的组件
});

    (5)如果在路由中,使用 查询字符串,给路由传递参数,则 不需要修改 路由规则的 path 属性

<router-link to="/login?id=10&name=zs">登录</router-link>
<!--  $route.query、$route.params -->

    (6)如果在路由中,使用 查询字符串,给路由传递参数,则 不需要修改 路由规则的 path 属性
    // 使用

<router-link to="/login/12/ls">登录</router-link>

    // 路由配置规则

{ path: '/login/:id/:name', component: login },

    (7)路由的嵌套
    使用 children 属性,实现子路由,同时,子路由的 path 前面,不要带 / ,否则永远以根路径开始请求,这样不方便我们用户去理解URL地址。   

<router-link to="/account">Account</router-link>
<router-view></router-view>

<template id="tmpl">
    。。。
    <router-link to="/account/login">登录</router-link>
    <router-link to="/account/register">注册</router-link>
    。。。
</template>
var router = new VueRouter({
    routes: [
        {
            path: '/account',
            component: account,
            children: [
                    { path: 'login', component: login },
                    { path: 'register', component: register }
            ]
        }
    ]
});

 

### RuoYi-Vue-Plus 使用教程与配置指南 RuoYi-Vue-Plus 是基于 Spring Boot、Spring Cloud 和 Vue.js 的前后端分离快速开发平台,其功能强大且易于扩展[^1]。以下内容将详细介绍 RuoYi-Vue-Plus 的使用教程及配置指南。 #### 1. 环境准备 在开始使用 RuoYi-Vue-Plus 前,需要确保本地环境满足以下条件: - JDK 1.8 或更高版本 - Maven 3.3+ - Node.js (建议使用 LTS 版本) - MySQL 数据库 - Redis 缓存服务 #### 2. 项目初始化 下载 RuoYi-Vue-Plus 源码后,需进行如下操作: - **后端初始化**:通过 Maven 构建后端项目,并配置 `application.yml` 文件中的数据库连接信息。 - **前端初始化**:进入前端目录,运行 `npm install` 安装依赖,然后执行 `npm run dev` 启动开发服务器[^2]。 #### 3. 核心功能配置 RuoYi-Vue-Plus 提供了多种核心功能模块,如用户管理、角色权限、定时任务等。以下是几个关键点的配置说明: - **数据库表结构**:项目启动时会自动根据 `application.yml` 配置文件生成相关表结构,若需要自定义字段,则需手动修改 SQL 脚本[^3]。 - **接口文档**:内置 Swagger2 接口文档工具,访问地址为 `/swagger-ui.html`,可直接查看并测试所有 API 接口[^4]。 - **缓存机制**:支持 Redis 缓存,默认配置已集成,只需确保 Redis 服务正常运行即可生效。 #### 4. 常见问题与解决方法 在实际使用过程中可能会遇到一些问题,例如跨域请求失败或登录超时等。以下是常见问题及其解决方案: - **跨域问题**:检查后端是否正确配置了 CORS(跨域资源共享),通常在 `WebConfig` 类中设置允许的域名和方法[^5]。 - **登录超时**:调整 `token` 过期时间参数,位于 `application.yml` 中的 `jwt.expiration` 字段。 ```python # 示例代码:调整 token 过期时间 jwt: expiration: 7200 # 单位为秒,默认为 7200 秒(即 2 小时) ``` #### 5. 学习资源推荐 对于初学者来说,可以参考以下学习资源来加深对 RuoYi-Vue-Plus 的理解: - 官方文档[^6] - GitHub 项目仓库[^7] - 相关技术博客文章
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值