• uniapp爬坑之旅_开发一个自己的app_day26_创建数据库保存个人任务


    一、项目进度

    今天创建了数据库uni-task-info来保存用户个人的任务信息,还创建了云函数update_userTask和get_userTask来更新和访问数据库,完成了数据从页面到云函数,再到数据库的过程

    二、数据库构想

    uni-task-info数据表用来保存用户的任务信息,每个用户对应表中的一条记录,一条记录主要存储三个方面的内容:

    一是用户名,这个作为主键(注册时限制用户名唯一),也是我们查找某一用户任务信息的依据;

    二是对象数组,保存着用户的所有任务,数组中一个对象对应一个任务,任务的具体信息以json形式保存在对象中;

    三是当前用户创建的任务数,int类型的变量,每次增加或删除任务的时候,都要相应地更改

    目前的数据库(见下图)还只是独立存储用户提交的每个任务,如果用户提交两个任务,那么在数据库中会显示为2条分开的记录,再者如果任务名重复,任务也还是可以正常添加到数据库中,所以数据库后面还要再继续完善,力求把一个用户的多个任务集中到对象数组里,储存到一条记录中,并且设置任务名不可重复

    三、遇到的问题

    今天碰到了一个问题,那就是如何保存当前用户的登陆信息,网站一般是用cookie,但是app端的我就不太清楚了,所以google了一下,发现页面传递数据可以用全局变量,就先把用户信息user存储到了App.vue中,作为一个全局变量,用户登陆时对该变量赋值,退出时清空该变量,其他页面获取用户信息就先访问这个全局变量,再将这个变量user作为主键到数据库里面查找相应的用户信息

    以下是全局变量的使用方法:

    <script>
    	export default {
    		// getApp().globalData.user = 'user' 对全局变量进行赋值
    		// console.log(getApp().globalData.text) 获取全局变量的值
    		globalData: {  
    			user: ''  
    		},
    		onLaunch: function() {
    			console.log('App Launch')
    		},
    		onShow: function() {
    			console.log('App Show')
    		},
    		onHide: function() {
    			console.log('App Hide')
    		}
    	}
    </script>
    
    <style>
    	/*每个页面公共css */
    </style>
    

    四、明天的计划

    继续完善数据库和云函数,让主页面的任务列表点进去后可以看到任务详情

  • 相关阅读:
    MyBatis 延迟加载
    超经典的 25 道 MyBatis 面试题
    公钥与私钥,HTTPS详解
    分布式,集群,微服务的理解
    单例模式的饿汉式和懒汉式的实现以及比较它们的区别比较(Java实现)
    Mybatis的一级缓存和二级缓存详解
    Maven install没有将jar包加载到本地仓库
    Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause
    数据结构_C语言_单链表
    Java实现一个简单的LRUCache
  • 原文地址:https://www.cnblogs.com/huangch/p/14386527.html
Copyright © 2020-2023  润新知