uniapp 开发一个密码管理app

密码管理app

介绍

最近发现自己的账号密码真的是太多了,各种网站,系统,公司内网的,很多站点在登陆的时候都要重新设置密码或者通过短信或者邮箱重新设置密码,真的很麻烦

所以准备开发一个app用来记录这些站好和密码

uniapp

经过初步筛选,准备使用uniapp,比较简单,

开发步骤

  1. 注册dcloud账号
  2. 下载开发工具hbuilderx
  3. 创建项目
  4. 云打包
  5. 安装到手机

这就完事了,是不是很简单

下面分享下核心代码

路由
json 复制代码
{
	"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
		{
			"path" : "pages/tab/home/home",
			"style" : 
			{
				"navigationBarTitleText" : "密码管理",
				"enablePullDownRefresh" : false
			}
		},
		{
			"path" : "pages/tab/my/my",
			"style" : 
			{
				"navigationBarTitleText" : "我的",
				"enablePullDownRefresh" : false
			}
		},
		{
			"path" : "pages/tab/home/add",
			"style" : 
			{
				"navigationBarTitleText" : "添加内容",
				"enablePullDownRefresh" : false
			}
		},
		{
			"path" : "pages/tab/home/show",
			"style" : 
			{
				"navigationBarTitleText" : "查看内容",
				"enablePullDownRefresh" : false
			}
		}
	
	],
	"tabBar": {
		"color": "#CCC",
		"selectedColor": "#3cc51f",
		"borderStyle": "black",
		"backgroundColor": "#ffffff",
		"list": [{
			"pagePath": "pages/tab/home/home",
			"iconPath": "static/image/shouye.png",
			"selectedIconPath": "static/image/shouye_1.png",
			"text": "管理"
		}, {
			"pagePath": "pages/tab/my/my",
			"iconPath": "static/image/wode.png",
			"selectedIconPath": "static/image/wode_1.png",
			"text": "我的"
		}]
	},
	"globalStyle": {
		"navigationBarTextStyle": "#FFFFFF",
		"navigationBarTitleText": "密码管理",
		"navigationBarBackgroundColor": "#32CD32",
		"backgroundColor": "#32CD32"
	},
	"uniIdRouter": {}
}
主页
js 复制代码
<template>
	<view class="content">
		<view class="allNum">
			总数量{{list.length}}
		</view>
		<view class="list">
			<view class="list-item"  v-for="(item,index) in list">
				<view class="item-text" @click="show(item)">
					{{item.name}}
				</view>
				<view class="time">
					时间:{{item.time}}
				</view>
				<view class="deleteBtn" @click="deleteById(index)">
					删除
				</view>
			</view>
		</view>
	</view>
	<view class="bottom">
		<view class="addBtn" @click="add">+</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				list: []
			}
		},
		onLoad() {
			this.read()
		},
		onShow() {
			this.read()
		},
		methods: {
			read() {
				var _that = this
				uni.getStorage({
					key:"datajson",
					success(res) {
						var _list = res.data
						_list.sort((e1,e2)=>e2.id - e1.id)
						_that.list = _list
					},fail(err) {
					}
				})

		},
		add() {
			uni.navigateTo({
				url: 'add'
			})
		},
		show(item) {
			var param = ''
			param += '?name=' + item.name
			param += '&id=' + item.id
			param += '&account=' + item.account
			param += '&password=' + item.password
			param += '&remark=' + item.remark
			uni.navigateTo({
				url: 'show' + param
			})
		},
		deleteById(index){
			this.list.splice(index,1)
			var _that = this
			uni.setStorage({
				key: 'datajson',
				data: _that.list
			})
		}

	}
	}
</script>

<style>
	.content {
		height: 100%;
		background-color: #ccc;
	}

	.list-item {
		width: 100%;
		background-color: #fff;
		box-shadow: 5px 5px 5px #c3c3c3;
		margin: 0.5rem 0rem;
		padding: 0.5rem 1rem;
		position: relative;
	}

	.item-text {
		padding: 1rem 0rem;
	}

	.time {
		font-size: 15px;
		color: #ccc;
	}

	.allNum {
		background-color: coral;
		font-size: 26px;
		width: auto;
		padding: 15px;
		text-align: center;
		margin: 5px;
	}

	.bottom {
		position: fixed;
		bottom: 0px;
		left: 0px;
		height: 50px;
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.addBtn {
		color: #fff;
		font-size: 40px;
		width: 50px;
		height: 50px;
		background-color: green;
		border-radius: 50%;
		text-align: center;
	}
	.deleteBtn{
		position: absolute;
		top: 30%;
		right: 15%;
		color: red;
		font-size: 18px;
		background-color: #c3c3c3;
		padding: 3% 5%;
		
	}
</style>

代码仓库

pass-mgr: 密码管理app (gitee.com)

app 预览


相关推荐
杨凯凡1 小时前
Docker环境搭建:Windows/macOS/Linux全平台教程
windows·macos·docker
阿昭L1 小时前
COM组件
windows
2501_916008896 小时前
iOS 跨平台开发实战指南,从框架选择到开心上架(Appuploader)跨系统免 Mac 发布全流程解析
android·macos·ios·小程序·uni-app·iphone·webview
歪歪1006 小时前
解决多 Linux 客户端向 Windows 服务端的文件上传、持久化与生命周期管理问题
linux·运维·服务器·开发语言·前端·数据库·windows
山川而川-R7 小时前
ubuntu摄像头型号匹配不上_11-6
linux·windows·ubuntu
一般社员10 小时前
Windows导入大型sql文件到mysql
windows·sql·mysql
A尘埃15 小时前
项目三:信息抽取与图谱问答(医疗科研文献知识图谱与智能问答平台)
人工智能·windows·知识图谱
winkel_wang19 小时前
think-cell 无法与 WPS Office 搭配使用
windows·wps·think-cell
Aurora(^*_*^)21 小时前
Neo4j Windows桌面版安装及更改默认数据存储位置
windows·neo4j
0x00071 天前
翻译《The Old New Thing》- 为什么 SHFormatDateTime 要接收一个未对齐的 FILETIME?
c++·windows