<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[beibei_niao的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/beibei_niao</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; beibei_niao]]></copyright><item><title><![CDATA[e.preventDefault() 和 e.stopPropagation()]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/143702628</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/143702628</guid><author>beibei_niao</author><pubDate>Tue, 12 Nov 2024 10:15:22 +0800</pubDate><description><![CDATA[阻止默认行为，例如阻止表单提交或链接跳转。：阻止事件冒泡，防止事件触发父级元素的事件处理函数。它们经常一起使用，尤其是在需要控制某个子元素的事件行为且不影响父级元素时。]]></description><category></category></item><item><title><![CDATA[JavaScript的展开运算符在React中的应用]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/143680918</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/143680918</guid><author>beibei_niao</author><pubDate>Mon, 11 Nov 2024 13:38:21 +0800</pubDate><description><![CDATA[选择使用哪种方式：如果你需要传递所有属性，使用对象展开语法会更简洁。而如果你只需要传递某些属性，显式传递属性可能会更清晰。注意事项：当使用对象展开语法时，请确保recipe对象中没有不必要的属性，因为所有属性都会被传递给组件。]]></description><category></category></item><item><title><![CDATA[React.lazy() 懒加载]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/143598658</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/143598658</guid><author>beibei_niao</author><pubDate>Thu, 07 Nov 2024 16:53:33 +0800</pubDate><description><![CDATA[React的懒加载]]></description><category></category></item><item><title><![CDATA[Eslint 和 Prettier]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/143592088</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/143592088</guid><author>beibei_niao</author><pubDate>Thu, 07 Nov 2024 14:04:26 +0800</pubDate><description><![CDATA[ESLint和Prettier是两个常用的工具，它们在 JavaScript 生态系统中扮演着重要角色，但它们的功能和目的有所不同。一、ESLint是什么？4.修复功能特性ESLintPrettier主要目的代码质量和错误检查代码格式化关注点语法、逻辑和最佳实践代码的外观和一致性规则自定义支持自定义规则提供少量可配置选项，主要关注格式化代码审查有助于发现潜在问题使代码的一致性减少审查过程中的争论点兼容性可以与 Prettier 一起使用。]]></description><category></category></item><item><title><![CDATA[如何手动触发onchange事件？]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/120177832</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/120177832</guid><author>beibei_niao</author><pubDate>Wed, 08 Sep 2021 13:24:12 +0800</pubDate><description><![CDATA[问题描述：

在page1中：通过选择部分条件来控制page2中下拉框的值；
	page2中下拉框的选中值显示正确，但是没有触发在page2中下拉框值变化引起的其他dom元素的显示；
	给下拉框添加了trigger('change')事件后，也没有起作用；
原因猜测：

change只会在元素获得焦点时被触发，它的值在失去焦点时被改变。

解决方法：


var e = new Event('change');
var el = document.getElementById('tfa_83...]]></description><category></category></item><item><title><![CDATA[vue的生命周期]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/118513586</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/118513586</guid><author>beibei_niao</author><pubDate>Tue, 06 Jul 2021 09:45:18 +0800</pubDate><description><![CDATA[beforeCreate（）

    创建前，刚执行了new操作，实例没有完全被创建出来会执行它，data和methods中的数据还没有初始化。

created()

    创建后，在这个钩子函数中，data和methods被初始化好了（属性和方法挂载在实例上）。

vue开始编译模板，把vue代码中的那些指令进行执行，在内存中生成一个模板字符串，然后把这个模板字符串渲染为内存中的dom，此时只是在内存中渲染好了模板，并没有把模板挂载到真正的页面中

beforeMount()

...]]></description><category></category></item><item><title><![CDATA[keep-alive]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/118513164</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/118513164</guid><author>beibei_niao</author><pubDate>Tue, 06 Jul 2021 09:22:52 +0800</pubDate><description><![CDATA[&lt;keep-alive&gt;是Vue的内置组件，能在组件切换过程中将状态保留在内存中，防止重复渲染DOM
	&lt;keep-alive&gt; 包裹动态组件时，会缓存不活动的组件实例，而不是销毁它们。和 &lt;transition&gt; 相似，&lt;keep-alive&gt; 是一个抽象组件：它自身不会渲染一个 DOM 元素，也不会出现在父组件链中。
	
	prop:

	* include: 字符串或正则表达式。只有匹配的组件会被缓存。

	* exclude: 字符串或正则表达式。任何]]></description><category></category></item><item><title><![CDATA[函数递归]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/113006551</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/113006551</guid><author>beibei_niao</author><pubDate>Fri, 22 Jan 2021 22:57:25 +0800</pubDate><description><![CDATA[function fn(n) {
    if (n === 1) {
        return 1;
    }
    return n * fn(n - 1);
}
fn(3);
console.log(fn(3));

1.递归求n的阶乘：1*2*3*···*n


function fb(n){
            if(n === 1 || n === 2){
                return 1;
            }
            return fb(n.]]></description><category></category></item><item><title><![CDATA[vue项目目录详解]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/106720258</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/106720258</guid><author>beibei_niao</author><pubDate>Fri, 12 Jun 2020 17:17:51 +0800</pubDate><description><![CDATA[http://wanlimm.com/77201809196941.html
]]></description><category></category></item><item><title><![CDATA[meta 详解]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/106690286</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/106690286</guid><author>beibei_niao</author><pubDate>Thu, 11 Jun 2020 15:40:45 +0800</pubDate><description><![CDATA[&lt;meta http-equiv="" content=""&gt;详解

https://www.cnblogs.com/fan-xiaofan/p/6028194.html
]]></description><category></category></item><item><title><![CDATA[vue中 v-if 和 v-show 的异同]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/106089852</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/106089852</guid><author>beibei_niao</author><pubDate>Wed, 13 May 2020 08:27:59 +0800</pubDate><description><![CDATA[vue中v-show和v-if的异同

一、官方解释：

v-if是“真正”的条件渲染，因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。
	v-if也是惰性的：如果在初始渲染时条件为假，则什么也不做——直到条件第一次变为真时，才会开始渲染条件块。
	相比之下，v-show就简单得多——不管初始条件是什么，元素总是会被渲染，并且只是简单地基于 CSS 进行切换。
	一般来说，v-if有更高的切换开销，而v-show有更高的初始渲染开销。因此，如果需要非常频繁地切换，则使用...]]></description><category></category></item><item><title><![CDATA[Ajax请求，客户端拿到后台返回的responseText为空的问题]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/105700761</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/105700761</guid><author>beibei_niao</author><pubDate>Thu, 23 Apr 2020 10:23:17 +0800</pubDate><description><![CDATA[1.学习Ajax请求参数传递过程中，本地搭建了一台node服务器，在app.js中创建客户端请求路由为：


app.post('/post',(req,res)=&gt;{
    //服务器拿到客户端的请求参数,再响应给客户端
    res.send(req.body)
});

一般项目中路由与入口文件是单独分离开的（这里为了单纯的学习）；

2.index.html


&lt;form...]]></description><category></category></item><item><title><![CDATA[前端常见跨域解决方案（较全面）]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/105579175</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/105579175</guid><author>beibei_niao</author><pubDate>Fri, 17 Apr 2020 14:01:34 +0800</pubDate><description><![CDATA[参考网址：

https://segmentfault.com/a/1190000011145364
]]></description><category></category></item><item><title><![CDATA[Vuex的状态管理指的是什么？]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/105106078</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/105106078</guid><author>beibei_niao</author><pubDate>Wed, 25 Mar 2020 22:11:15 +0800</pubDate><description><![CDATA[1.State
    State提供唯一的公共数据源，所有共享的数据都要统一放到Store的State中进行存储
    const store = new Vuex.Store({
        state:{count:0}
    })
    组件访问State中数据的第一种方式：
        this.$store.state.全局数据名称
    组件访问State中数据的第...]]></description><category></category></item><item><title><![CDATA[Vuex的基本使用]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/105083599</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/105083599</guid><author>beibei_niao</author><pubDate>Tue, 24 Mar 2020 22:48:49 +0800</pubDate><description><![CDATA[安装vuex依赖包


npm install vuex --save

导入vuex包


import Vuex from 'vuex
Vuex.use(Vuex)

创建store对象


const store = new Vuex.Store({

    //state  中存放的是全共享的数据

    state : { count:0}
})

将store对象挂载到vue实例中...]]></description><category></category></item><item><title><![CDATA[vuex的概述]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/105082827</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/105082827</guid><author>beibei_niao</author><pubDate>Tue, 24 Mar 2020 22:36:20 +0800</pubDate><description><![CDATA[Vuex概述
	Vuex的基本使用
	Vuex的核心概念
	基于Vuex的实例
Vuex的概述

组件之间共享数据的方式
父向子传值：v-bind 属性绑定

子向父传值：v-on 事件绑定

兄弟组件之间共享数据：EventBus
...]]></description><category></category></item><item><title><![CDATA[深拷贝+浅拷贝，及深拷贝的几种实现方式]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/104764175</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/104764175</guid><author>beibei_niao</author><pubDate>Mon, 09 Mar 2020 23:16:11 +0800</pubDate><description><![CDATA[------深拷贝 ：拷贝对象的具体内容，内存地址是自主分配的，拷贝结束后两个对象虽然存的值一样，但是内存地址不一样
	------浅拷贝 ：对内存地址的复制，让目标对象指针和源对象指向同一片内存空间。注意：当内存销毁的时候，指向对象的指针 ，必须重新定义，才能够使用（浅拷贝是一个传址,也就是把a的值赋给b的时候同时也把a的址赋给了b， 当b（a）的值改变的时候，a（b）的值同时也会改变）
	--...]]></description><category></category></item><item><title><![CDATA[箭头函数的this指向]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/104706738</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/104706738</guid><author>beibei_niao</author><pubDate>Fri, 06 Mar 2020 23:50:27 +0800</pubDate><description><![CDATA[let foo = () =&gt;{ }
	箭头函数会绑定this
	箭头函数不是声明式函数，但都是函数表达式
	当只有一个参数时，（）小括号可以省略;
	箭头函数的注意事项：
箭头函数的this指向定义者，而一般函数里的this指向其调用者；
	箭头函数不能new；
	箭头函数没有arguments；

//先看一下普通函数里的this指向
let obj ={
    name:'kim...]]></description><category></category></item><item><title><![CDATA[构造函数里的this指向]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/104693353</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/104693353</guid><author>beibei_niao</author><pubDate>Fri, 06 Mar 2020 12:24:08 +0800</pubDate><description><![CDATA[&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;title&gt;构造函数里的this指向&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;script&gt;
        /*
       ...]]></description><category></category></item><item><title><![CDATA[绑定方式里的this指向]]></title><link>https://blog.youkuaiyun.com/beibei_niao/article/details/104690784</link><guid>https://blog.youkuaiyun.com/beibei_niao/article/details/104690784</guid><author>beibei_niao</author><pubDate>Fri, 06 Mar 2020 10:37:37 +0800</pubDate><description><![CDATA[&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;title&gt;this指向&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;button id='btn1' onclick="test(thi...]]></description><category></category></item></channel></rss>