#021todos初版#

2023-10-10 09:50
文章标签 021todos 初版

本文主要是介绍#021todos初版#,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

日志,各位看官就当乐子看吧。

正经人谁写日记啊?!! ——鹅城县长

todos

项目初版基本好了,代码中保留了axios的代码,之后找找如何正确在uniapp中使用axios

使用组件的一个难点就是很难操作其生成的dom对象。

有两个需求,没实现:

  1. 当事项完成时,uni-easyinput生成的input能加上删除线,即text-decoration:line-through;
    方案是操作dom,但是只限于h5平台,微信小程序中,无法使用DOM,然后尝试用uniapp内置的获取节点方法uni.createSelectorQuery(),但取不到对应的input(h5下,是通过给组件绑定id,但是微信下,根本没有id属性);
    // 获取dom,添加删除线
    const input=document.querySelector('#todo-'+todo._id).querySelector("input.uni-input-input")
    if(input.getAttribute('style')==null) {input.setAttribute('style','text-decoration:line-through;')
    }else{input.removeAttribute('style')
    }
    
  2. 数据初始化后,根据事项完成状态,添加删除线
    方案是操作dom, 在mounted中,获取生成的dom对象。结果发现没有获取到。
  3. 使用axios发送请求
    实际中也有需要将vue项目改造成uniapp项目,除了改组件,JS代码都是希望仅可能复用的,找了第三方插件,如uniapp-axios-adapter,没实现。说一下使用过程,大家看看哪里不对:
    1. 安装npm i axios@0.27.2npm i uniapp-axios-adapter

    2. main.js中配置全局API,按照原先vue项目的使用习惯

      1. 配置
        // main.js        
        import request from "/common/http.js";
        // ...
        const app = new Vue({
        ...App
        })app.$mount()
        // axios 全局引用
        app.config.globalProperties.$axios = request;
        
        http.js文件
        // /common/http.js
        import axios from "uniapp-axios-adapter";
        const request = axios.create({
        baseURL: "http://127.0.0.1:3000",
        timeout: 10000,
        });request.interceptors.request.use((config) => {
        //带上token
        // config.headers["Authorization"] = "token";
        return config;
        });request.interceptors.response.use((response) => {
        // 统一处理响应,返回Promise以便链式调用
        if (response.status === 200) {const { data } = response;if (data && data.code === 200) {return Promise.resolve(data);} else {return Promise.reject(data);}
        } else {return Promise.reject(response);
        }
        });export default request;
        
      2. 使用,直接调post或者按照文档方式都结果失败了
        // 直接调
        axios.post('/task-modify', {id: this.todos[index]._id,title: editText
        }).then()
        // 文档案例的方式
        this.$axios({method: 'get',url: "/task-del",params: {id: this.todos[delIndex]._id}
        }).then()
        
    3. 采取了直接使用的方式

      // 官方文档的使用案例
      import axios from "uniapp-axios-adapter";
      axios.get({url: "https://example.com/api/getUserById",params: {id: 1,},
      });
      

      报错是,get is not defined,这就很疑惑了!

总结

三天,学习uniapp,使用其组件,简单实现一个todos项目

在这里插入图片描述

这篇关于#021todos初版#的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/179668

相关文章

C#高级进阶---关于插件开发(初版)

一、关于插件         插件开发是一种使应用程序功能可扩展的技术。通过插件,应用程序可以动态地加载和使用外部功能模块,而无需重新编译整个程序。 1. 插件架构设计 插件系统通常包含以下几个核心部分: 主程序(Host Application):主程序是插件的宿主,它负责加载和管理插件。主程序定义了插件接口(通常是一个抽象类或接口),所有插件都必须实现这个接口。 插件接口(Plug

springboot+vue+element+mysql个人网站初版上线(tzxcode.cn)

缘由 不知不觉,在软件行业摸爬滚打早已经7年多,目前的职位是全栈工程师。 什么是全栈工程师,有人说就是打杂的,这技术也会一点,那技术也会一点,却没有一个精通的。 也有人说,全栈工程师应该是具有丰富的经验,具有优秀的产品思维,也具有优秀的架构思维,这时候其实已经不局限于技术。 回首我的过往,其实我应该追求的是后一种,但是实际上却停留在了前一种。 只不过,我一直觉得这两种其实并不矛盾,而是两个阶段,

C++初阶:STL容器list的使用与初版自实现

目录 1. list的接口与使用1.1 默认成员函数1.2 迭代器与容量相关成员函数1.3 存储数据操作相关成员函数1.4 其他list操作成员函数 2. list的自实现2.1 list的自实现功能2.2 list的结点结构2.3 list的迭代器2.3 list的结构2.4 list迭代器的运算符重载2.5 list的成员函数 3. const迭代器,operator->运算符重载与模板

Unity 角色控制(初版)

角色控制器组件,当然是将组件放在角色上了。 using System.Collections;using System.Collections.Generic;using UnityEngine;public class c1 : MonoBehaviour{// 获取角色控制器private CharacterController player;void Start(){// 加载角色

瀑布流布局 (初版)

瀑布流布局 文章目录 瀑布流布局前言1. 背景2. 点⬇️🔗去体验效果如下图所示: 一、初版waterfall布局和问题暴露?1.效果图如下:2.暴露问题如下图所示:第一张问题图:第二张问题图: 3.HTML代码如下:4.JS代码如下: 二、初版waterfall布局问题的排查和解决1.排查问题2.解决问题第一种解决方法:设置块级作用域(行不通)代码修改如下图所示:修改后如下图所示

网络安全(初版,以后会不断更新)

1.网络安全常识及术语 资产 任何对组织业务具有价值的信息资产,包括计算机硬件、通信设施、IT 环境、数据库、软件、文档 资料、信息服务和人员等。 漏洞 上边提到的“永恒之蓝”就是windows系统的漏洞 漏洞又被称为脆弱性或弱点(Weakness),是指信息资产及其安全措施在安全方面的不足和弱 点。漏洞一旦被利用,即会对资产造成影响。通常一个网络的漏洞/弱点可被分为:技术漏洞、配 置漏洞和安全策

用开源大语言模型开发的智能对话机器人初版原型验证

用开源大语言模型开发的智能对话机器人初版原型验证 0. 背景1. 初版检证效果展示2. 验证效果总结 0. 背景 同事要想做一个智能对话机器人,特别的需求有有些几点, 通过预置提示词(包括确认事项),让大语言模型用会话式的形式逐一确认各个问题。如果没有得到回复,继续确认。使用日志中确认的错误信息,去 docs.oracle.com 去检索。(初版还未加入该功能)将最终的内容整理

MDCC 2016:云集顶尖技术大牛,大会初版日程公布(表)

2016 年 9 月 23 - 24 日,由 CSDN 和创新工场联合主办的 MDCC 2016 中国移动开发者大会将在北京·国家会议中心隆重召开。大会正在有条不紊的筹备和进行中,目前火热报名中,票价仍处于 8 折优惠中,五人以上团购更有特惠,限量供应(票务详情链接,8折优惠,欲购从速!)。 作为一年一度移动开发者盛会,今年MDCC大会,除了国内外技术大牛云集的全体大会主题演讲,主办方还精心

东初版 java代码混淆 java加密class Java混淆实际方案

作为资深的开发专家,我很高兴与您分享有关Java混淆的实际方案和案例。Java混淆是一种重要的安全措施,用于保护您的代码免受恶意分析和反编译的威胁。在本文中,我将介绍Java混淆的基本原理、常用工具,以及一个简单的案例来演示如何应用混淆来保护您的代码。 **Java混淆的基本原理** Java混淆是一种通过修改Java源代码或字节码的方式,使其变得更难以理解和分析的技术。这可以通过重命名类、方法和

Day_10面向对象-模拟银行账户(初版)

题目 模拟银行账户业务,编写Account类,账户 密码 金额,为 bank添加带参方法实现存款和取款业务,存款时帐户初始金额为0元,取款时如果余额不足给出提示。 **********xxx银行欢迎你***********      1 取钱  2 存钱  0退出 *********************************** 请选择要办理的业务:1 请输入存款金额:1000 存款成功