<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[phper2020的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/phper2020</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; phper2020]]></copyright><item><title><![CDATA[小程序修改swiper指示点样式]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/114700295</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/114700295</guid><author>phper2020</author><pubDate>Fri, 12 Mar 2021 16:51:01 +0800</pubDate><description><![CDATA[&lt;swiper class="active-areaswiper"&gt;&lt;/swiper&gt;



.wxss
/* 默认的样式 */
.active-areaswiper .wx-swiper-dot {
	width: 8rpx;
	height: 8rpx;
	background: #DFDFDF;
	border-radius: 4rpx;
}

/* 选中的样式 */
.active-areaswiper .wx-swiper-dot.wx-swiper-dot-active ]]></description><category></category></item><item><title><![CDATA[小程序 关键词变色]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/113971467</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/113971467</guid><author>phper2020</author><pubDate>Tue, 23 Feb 2021 10:11:52 +0800</pubDate><description><![CDATA[这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题，有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能，丰富你的文章UML 图表FLowchart流程图导出与导入导出导入
欢迎使用Markdown编辑器
你好！ 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar]]></description><category></category></item><item><title><![CDATA[vue3.0学习记录(5)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/111145544</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/111145544</guid><author>phper2020</author><pubDate>Mon, 14 Dec 2020 18:51:42 +0800</pubDate><description><![CDATA[setup
setup 接收两个参数

props：可以访问组件传入的 prors 属性，而且会自动推论成 props这个属性中定义的类型。
context：在 setup 中无法访问vue2中最常用的this对象，这个context提供了this上最常用的三个属性  1. context.attrs 对应 vue2中的 $attrs 属性  2.context.slots 对应 vue2中的 slots 插槽  3.context.emit 对应 vue2中的 emit 发送事件 这几个值在每次使用的时候]]></description><category></category></item><item><title><![CDATA[vue3.0学习记录(4)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/111140545</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/111140545</guid><author>phper2020</author><pubDate>Sun, 13 Dec 2020 18:03:06 +0800</pubDate><description><![CDATA[安装axios
npm install axios --save

安装完成之后就可以调用axios发送请求了
发送请求
如新建一个ts文件，发送一个简单的请求：
import { ref } from 'vue'
import axios from 'axios'

function useURL&lt;T&gt;(url: string){
    const loading = ref(true)
    const loaded = ref(false)
    const result = ref]]></description><category></category></item><item><title><![CDATA[vue3.0学习记录(3)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/111060804</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/111060804</guid><author>phper2020</author><pubDate>Sat, 12 Dec 2020 17:52:02 +0800</pubDate><description><![CDATA[watch 侦听器
比如点击按钮时，页面发生改变，并且改变网页的标题：
&lt;template&gt;
  &lt;div&gt;
    &lt;h1&gt;{{greetings}}&lt;/h1&gt;
    &lt;button @click="updateGreet"&gt;改变数据&lt;/button&gt;
  &lt;/div&gt;
&lt;/template&gt;

&lt;script lang="ts"&gt;
import { defineComponent,ref,wat]]></description><category></category></item><item><title><![CDATA[vue3.0学习记录(2)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/111058611</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/111058611</guid><author>phper2020</author><pubDate>Sat, 12 Dec 2020 14:18:05 +0800</pubDate><description><![CDATA[vue3 与 vue2区别
写法上已经有很大的区别了，如：
vue2：
&lt;template&gt;
  &lt;div&gt;
    &lt;h1&gt;{{count}}&lt;/h1&gt;
    &lt;h1&gt;{{twocount}}&lt;/h1&gt;
    &lt;button @click="test"&gt;点赞+1&lt;/button&gt;
  &lt;/div&gt;
&lt;/template&gt;

&lt;script lang="ts"&gt;
impor]]></description><category></category></item><item><title><![CDATA[vue3.0学习记录(1)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/111052194</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/111052194</guid><author>phper2020</author><pubDate>Sat, 12 Dec 2020 00:21:31 +0800</pubDate><description><![CDATA[vue3.0官方文档地址
https://v3.vuejs.org/
使用 vue-cli 配置 vue3 开发环境

卸载旧版本 vue-cli npm uninstall vue-cli -g
如果出错，有可能是npm的全局路径遭到了更改，则运行以下命令：npm config set prefix /usr/local
安装 vue-cli npm install -g @vue/cli
使用 vue --version 命令查看版本
输入：vue create xxxx xxxx表示项目名称
进入选项]]></description><category></category></item><item><title><![CDATA[vue 2.9.6无法卸载问题]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/111051318</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/111051318</guid><author>phper2020</author><pubDate>Fri, 11 Dec 2020 19:00:27 +0800</pubDate><description><![CDATA[运行cmd
首先输入 where vue 查看在哪里有vue文件
删除上面显示的硬盘上的文件
然后重新卸载：npm uninstall vue-cli -g
然后全局安装：cnpm install -g @vue/cli

]]></description><category></category></item><item><title><![CDATA[Typescript学习(3)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/111032906</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/111032906</guid><author>phper2020</author><pubDate>Fri, 11 Dec 2020 16:46:50 +0800</pubDate><description><![CDATA[类型别名(type)
type StrOrNumber = string | number
let result: StrOrNumber = 'test'
result = 123

字面量
type Directions = 'Up' | 'Down' | 'Left' | 'Right'
let test: Directions = 'Up'		// 只能等于上面定义的这四个值 

交叉类型
interface IName {
	name: string
}
type IPerson = IName ]]></description><category></category></item><item><title><![CDATA[Typescript学习(2)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/110958368</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/110958368</guid><author>phper2020</author><pubDate>Thu, 10 Dec 2020 23:19:20 +0800</pubDate><description><![CDATA[类

Class：定义了一切事物的抽象特点，包括属性和方法。
对象（Object）：类的实例，通过new生成。
面向对象（OOP）三大特性：封装、继承、多态。
1.封装：将数据操作细节隐藏，只暴露对外接口，调用端不需要也不可能知道细节，只能通过对外的接口来访问该对象。
2.继承：子类可以继承父类，子类除了拥有父类的所有特征外还有一些更具体的特性。
3.多态：由继承产生了相关的不同的类，对同一个方法可以有不同的响应。

Typescript中的类

Public：修饰的属性或方法是公有的，可以在任何地方被调用]]></description><category></category></item><item><title><![CDATA[Typescript学习(1)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/110955394</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/110955394</guid><author>phper2020</author><pubDate>Thu, 10 Dec 2020 16:08:33 +0800</pubDate><description><![CDATA[安装typescript

查看本机是否安装了node
npm install -g typescript	// 全局安装typescript
tsc -v 查看安装的typescript版本
使用vs code新建一个文件夹，进入该文件夹创建一个test.ts

数据类型


原始数据类型(所有类型都是不可变的)
1.Boolean  (ts示例：let isTest: boolean = false)
2.Null  (ts示例：let null: null = null)
3.Undefined  (]]></description><category></category></item><item><title><![CDATA[thinkphp6学习笔记(5) -- 门面]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/110675442</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/110675442</guid><author>phper2020</author><pubDate>Sat, 05 Dec 2020 00:09:04 +0800</pubDate><description><![CDATA[门面（Facade）
门面为容器中的（动态）类提供了一个静态调用接口，它的功能就是可以让类无需实例化而直接进行静态方式调用
例子：在app\index\common\Test这个类中，有一个hello方法
&lt;?php
namespace app\index\common;

class Test
{

    public function hello($name){
        return 'hello,' . $name;
    }

}

而我们需要在别的地方调用此方法：
&lt;?ph]]></description><category></category></item><item><title><![CDATA[thinkphp6学习笔记(4)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/110506669</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/110506669</guid><author>phper2020</author><pubDate>Sat, 05 Dec 2020 00:08:11 +0800</pubDate><description><![CDATA[1.

]]></description><category></category></item><item><title><![CDATA[thinkphp6学习笔记(3)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/110391826</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/110391826</guid><author>phper2020</author><pubDate>Wed, 02 Dec 2020 17:07:48 +0800</pubDate><description><![CDATA[1.路由
注册路由
最基础的注册方法：Route::rule(‘路由表达式’,‘路由地址’,‘请求类型’)。
请求类型：get(GET请求)、post(POST请求)、put(PUT请求)、delete(DELETE请求)、patch(PATCH请求)、*(任何请求类型)。
路由快捷注册方法：Route::快捷方法名(‘路由表达式’, ‘路由地址’)。
规则表达式的定义以 / 为参数分割符，每个参数中都可以包括动态参数可以使用 :变量 或者 &lt;变量&gt;，会自动绑定到操作方法的对应参数。变量用 [ ]]></description><category></category></item><item><title><![CDATA[thinkphp6学习笔记(2)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/110389011</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/110389011</guid><author>phper2020</author><pubDate>Mon, 30 Nov 2020 16:41:38 +0800</pubDate><description><![CDATA[多应用模式下需要安装多应用模式扩展
composer require topthink/think-multi-app
1.访问路径
1.可以在app.php配置文件中配置default_app配置参数指定默认的应用。
指定默认访问的应用名：‘default_app’ =&gt; ‘index’
2.如果应用不存在的话可以指定默认访问应用
开启应用快速访问：‘app_express’    =&gt;    true
指定默认访问的应用名：‘default_app’ =&gt; ‘index’
2.应用目录]]></description><category></category></item><item><title><![CDATA[thinkphp6学习笔记(1)]]></title><link>https://blog.youkuaiyun.com/phper2020/article/details/110387531</link><guid>https://blog.youkuaiyun.com/phper2020/article/details/110387531</guid><author>phper2020</author><pubDate>Mon, 30 Nov 2020 14:27:29 +0800</pubDate><description><![CDATA[1.安装
windows系统下，tp6需要先下载composer，然后进入自己的web目录执行命令
composer creatr-project topthink/think xxx
2.更新
执行 composer upload topthink/framework
3.运行
执行 php think run
在浏览器中输入 http://localhost:8000
若能看到以下页面就说明安装成功。

4.命名规范
1.目录使用小写加下划线。
2.类文件采用驼峰法，且首字母大写。
3.方法、属性命名采]]></description><category></category></item></channel></rss>