ToDoList

Vue3.0--Vue Composition API使用体验

て烟熏妆下的殇ゞ 提交于 2020-08-17 16:40:26
Vue3.0目前已经出了beta版本,并在github上进行了开源,叫做 vue-next ,本文将之前采用Vue2.6开发的todoList小项目改造成为Vue3.0编写,并介绍一下2.x和3.x之间写法的不同之处。 点击体验 Github地址: Vue.js2.6版本todoList , Vue.js3.0版本todoList Vue3.x适配大部分Vue2.x的组件配置,也就是说以前我们在Vue2.x针对组件的一些配置项,例如: export default { name: 'test' , components: {}, props: {}, data () { return {} }, created (){}, mounted () {}, watch:{}, methods: {} } 复制代码 在Vue3.x中也是可以适配的,对应的相关生命周期方法也可正常执行,但是Vue3.x的一大核心是引入了 Vue Composition API (组合式API),这使得组件的大部分内容都可以通过 setup() 方法进行配置,同时Vue Composition API在Vue2.x也可以使用,需要通过安装@vue/composition-api来使用: npm install @vue/composition-api ... import VueCompositionApi

使用 React Hooks 结合 EventEmitter

岁酱吖の 提交于 2020-08-16 08:16:32
EventEmitter 很适合在不修改组件状态结构的情况下进行组件通信,然而它的生命周期不受 react 管理,需要手动添加/清理监听事件很麻烦。而且,如果一个 EventEmitter 没有使用就被初始化也会有点麻烦。 目的 所以使用 react hooks 结合 event emitter 的目的便是 添加高阶组件,通过 react context 为所有子组件注入 em 对象 添加自定义 hooks,从 react context 获取 emitter 对象,并暴露出合适的函数。 自动清理 emitter 对象和 emitter listener。 实现 实现基本的 EventEmitter 首先,实现一个基本的 EventEmitter,这里之前吾辈曾经就有 实现过 ,所以直接拿过来了。 type EventType = string | number export type BaseEvents = Record<EventType, any[]> /** * 事件总线 * 实际上就是发布订阅模式的一种简单实现 * 类型定义受到 {@link https://github.com/andywer/typed-emitter/blob/master/index.d.ts} 的启发,不过只需要声明参数就好了,而不需要返回值(应该是 {@code void}) */

云开发-web应用中使用数据库

让人想犯罪 __ 提交于 2020-08-15 06:42:19
如何在 web 应用中使用数据库 随着云时代的到来,云开发有着独特的优势相对于传统开发,从数据库而言,cloudbase 提供的云数据库真的很方便,本文就以一个简单的 todolist 小例子来讲解一下如何在 web 应用中使用云开发数据库 构建简单的界面 下面的这个 todolist 只要包括的功能有:增加事情,删除事情,修改事情的完成状态,以及查询事情,所有的操作都是基于云数据库的 该界面的构建主要用到了 Vue 和 bootstrap。使用 Vue 双向数据绑定可以更方便的操作数据,使用 bootstrap 来构建好看的界面 界面构建代码如下: <div id="app"> <div class="panel panel-primary"> <div class="panel-heading"> <h3 class="panel-title">web应用中使用数据库</h3> </div> <div class="panel-body form-inline"> <label> Name: <input type="text" class="form-control" v-model="name" /> </label> <input type="button" value="添加" class="btn btn-primary" @click="add()" />

小黄条:能嵌入桌面的跨平台todolist

半城伤御伤魂 提交于 2020-08-15 06:35:31
http://www.yynote.cn/ 小黄条:能嵌入桌面的跨平台todolist 一款跨平台todolist,手机、PC双向同步 ,随时随地管理任务 无推送、无广告、无红点,不主动打扰 跨平台同步,覆盖所有办公场景,随时随地查看、记录、编辑、管理任务 Windows桌面便签,支持嵌入桌面,搭配极简模式,完美融入系统桌面 Windows桌面便签,贴近屏幕边缘时自动隐藏,便于保护隐身 一览式todolist清单,简单、纯粹、实用 支持“置顶”,重要的事情优先做 左滑任务可为每个任务单独设置提醒 已完成的任务按天归档,方便快速回顾本周主要工作,高效输出工作周报 任务记录云端存储永不丢失 App图标可提示未完成任务数量,需要在more页面手动开启 支持Widget,Widget可快速完成任务,无需启动应用也能浏览、管理Todolist,更直观高效的自我管理 下载地址: 平台 版本号 更新日期 下载链接 For Windows V2.1.0 2020-04-02 V2.1.0 For Windows 免安装版 V2.1.0 2020-04-02 V2.1.0 免安装版 For Android V2.0.3 2020-01-31 V2.0.3 For iOS V2.1.0 2020-04-01 V2.1.0 设计师推荐壁纸 设计师推荐壁纸 来源: oschina 链接: https:/

Vue.js实训【基础理论(5天)+项目实战(5天)】博客汇总表【详细笔记】

大憨熊 提交于 2020-08-11 21:39:54
目 录 前言 基础理论(5天) 基础理论-Day01 基础理论-Day02 基础理论-Day03 基础理论-Day04 基础理论-Day05 项目实战 项目实战-Day01 项目实战-Day02 项目实战-Day03 项目实战-Day04、Day05 前言 10天的实训,收获还是很多的。并且,几乎每节课都有录播+源码+笔记(只有一节课,忘了录屏)。 大部分知识,都总结到了博客上。 培训用到的东西:VScode软件、视频、PDF笔记、源码。 除了视频没有上传,其它的都在博客上了。视频,不方便上传!!!可私聊... 例如: 基础理论(5天) 基础理论-Day01 Vue.js-Day01-AM【第一次学习-安装、基础使用(引入方式)、数据展示、指令介绍(v-html、v-text、v-bind、v-if、v-for】 Vue.js-Day01-PM【事件绑定(事件传参、事件对象、传参+获取事件对象)、样式处理操作(模板、事件、属性绑定)、Tab切换(原生js实现、Vue.js实现)、js中的this详解关键字】 基础理论-Day02 Vue.js-Day02-AM【Vue表单、核心指令(单选框、密码框、多行文本框、单选、多选、勾选、下拉列表)、组件汇总案例、ToDoList案例、计算属性(computed)、watch监听】 Vue.js-Day02-PM【组件化开发(全局注册组件

阿里云开发校园合伙人七天打卡计划(五)

倾然丶 夕夏残阳落幕 提交于 2020-08-10 15:56:08
访问云数据库,并创建一个 TodoList 应用。 步骤 1.阿里云平台,创建应用实验室-web-Midway Serverless OTS数据库示例 2.进入云IDE,安装依赖,在终端输入 npm i 3.创建阿里云OTS表格存储 网站 https://www.aliyun.com/product/ots 点击立即开通 进入管控,台点击创建实例 实例创建后复制公网ip 创建数据表 数据表名称:list 表主键:id 字符串类型 创建Access,点击Access管理 保存AccessKey ID和AccessKey Secret 4.修改代码 选择src- api- config- config.default.ts文件,将刚刚复制的东西注释复制 5.启动开发服务 在终端输入 npm run dev 等待启动成功,按Ctrl+单击给出的地址 6.在网页中加入自己的标签,效果如图 来源: oschina 链接: https://my.oschina.net/u/4278795/blog/4482472

To Do List

随声附和 提交于 2020-08-06 19:48:07
list,string,tuple,dictionary之间的转换 https://blog.csdn.net/YQ1228/article/details/78542035 https://www.cnblogs.com/yigui/p/9500575.html robotFrameWork https://www.cnblogs.com/yigui/p/9218035.html Appium中的校验 https://www.cnblogs.com/yigui/p/7651918.html XML工具读取 multipart/form-data 文件上传表单中 传递参数无法获取的原因! 1.什么是multipart/form-data 首先我们需要明白在html中的enctype属性, enctype:规定了form表单在发送到服务器时候编码方式。他有如下的三个值。 ①application/x-www-form-urlencoded。默认的编码方式。 但是在用文本的传输和MP3等大型文件的时候,使用这种编码就显得 效率低下。 ②multipart/form-data 。 指定传输数据为二进制类型,比如图片、mp3、文件。 ③text/plain。 纯文体的传输。 空格转换为 “+” 加号,但不对特殊字符编码。 2.明确在enctype参数为application/x-www

ASP.NET Core Blazor WebAssembly实现一个简单的TODO List

两盒软妹~` 提交于 2020-07-28 09:05:06
基于blazor实现的一个简单的TODO List 最近看到一些大佬都开始关注blazor,我也想学习一下。做了一个小的demo,todolist,仅是一个小示例,参考此vue项目的实现 http://www.jq22.com/code1339 先看实现的效果图 不BB,直接可以去看 源码与预览地址 示例地址 http://baimocore.cn:8081/ 源码地址 BlazorAppTodoList 源码介绍 我们这里删除了默认的一些源码。只保留最简单的结构,在Pages/Index.razor中。 @code代码结构中写如下内容 创建一个类,里面包含 id,label,isdone三个属性值。 public class TodoItem { public TodoItem () { } public TodoItem (int id, string label, bool isDone) { Id = id; Label = label; IsDone = isDone; } public int Id { get; set; } public string Label { get; set; } public bool IsDone { get; set; } } 我们可以通过override重写初始化,并给Todos设置一些数据。 private IList

Vue.js 2.x笔记:组件(5)

北战南征 提交于 2020-05-08 20:48:27
1. 组件简介   组件(Component)是 Vue.js 最强大的功能之一,组件可以扩展 HTML 元素,封装可重用的代码。   组件:为了拆分Vue实例的代码量,以不同的组件来划分不同的功能模块,需要什么样的功能,可以去调用对应的组件。   模块化和组件化的区别:   ◊ 模块化:是从代码逻辑的角度进行划分的;方便代码分层开发,保证每个功能模块的职能单一。   ◊ 组件化:是从UI界面的角度进行划分的;前端的组件化,方便UI组件的重用。   2. 注册组件   Vue.js提供两种组件注册方式:全局注册和局部注册。 2.1 全局组件   全局注册需要在根实例初始化之前注册,这样组件才能在任意实例中被使用。   注册全局组件语法格式: Vue.component(tagName, options)   其中,tagName 为组件名,options 为配置选项。    这条语句需要写在var vm = new Vue({ options })之前。   注册组件后调用方式: < tagName ></ tagName >   所有实例都能用全局组件。   组件名定义方式:PascalCase和kebab-case。在组件命名时可以采用PascalCase或kebab-case,但在DOM中只能使用kebab-case。   PascalCase示例: < div id =

Vue项目用webpack打包后,预览时资源路径出错(文末有vue项目链接分享)

大兔子大兔子 提交于 2020-04-29 23:27:14
最近用vue写了一些项目,项目写完之后需要打包之后才能放到网上展示,所以在这里记录一下项目打包的过程以及遇到的一些问题。 -------------------------------------------------- 分割线 -------------------------------------------------- 一、项目打包过程: 1.vue项目写完后,首先在项目路径下的命令行中运行:npm run build,看到Build complete即表示项目打包完成; 然后,回到自己的项目文件夹中,会看到新生成了一个dist文件夹,这个dist文件夹就是用来存放webpack给我们打包后的文件的 打开dist文件夹,会看到里面有一个static文件夹和一个index.html文件,static文件夹里存放的是webpack为我们打包后的css文件、js文件以及项目图片等,而index.html则是我们用vue搭建的项目的主页,然而,在浏览器中打开index.html会发现显示空白!! 二.资源的路径问题 上面说到打包后得到的index.html在网页中打开显示空白,我们可以按F12打开控制台看看究竟发生了什么情况。 打开控制台后,我们可以发现一些报错信息,显示无法找到文件,这些文件都是webpack给我们打包好的资源文件,无法找到这些文件的原因是 路径设置问题 。