<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[BaiMoci的博客]]></title><description><![CDATA[前端开发实战日常]]></description><link>https://blog.youkuaiyun.com/BaiMoci</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; BaiMoci]]></copyright><item><title><![CDATA[unable to resolve dependency tree解决_BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/122337281</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/122337281</guid><author>BaiMoci</author><pubDate>Thu, 06 Jan 2022 10:02:49 +0800</pubDate><description><![CDATA[Vue项目启动时的问题

npm ERR! ERESOLVE unable to resolve dependency tree



新建项目或第一次启动时的报错，尝试启动后出现新的错误

Syntax Error: Error: Failed to load plugin 'vue' declared in '.eslintrc.js': Cannot find module 'eslint-plugin-vue' Require stack:

解决办法：


npm i --legacy-peer.]]></description><category></category></item><item><title><![CDATA[error ‘res‘ is assigned a value but never used no-unused-vars问题解决__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/121832411</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/121832411</guid><author>BaiMoci</author><pubDate>Thu, 09 Dec 2021 17:01:22 +0800</pubDate><description><![CDATA[编写vue项目时遇到了这样的错误报告





错误原因：eslint的验证语法

解决办法：在错误语句后添加注释


// eslint-disable-line no-unused-vars


如下列代码


methods: {
    async save() {
      let res;     // eslint-disable-line no-unused-vars
      if (this.id) {
        res = await this.$http.put(`ca..]]></description><category></category></item><item><title><![CDATA[vue : 无法加载文件 E:\nodejs\node_global\vue.ps1，因为在此系统上禁止运行脚本，问题解决__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/121788939</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/121788939</guid><author>BaiMoci</author><pubDate>Wed, 08 Dec 2021 13:26:49 +0800</pubDate><description><![CDATA[VSCode终端创建vue项目时出现错误导致失败：


vue : 无法加载文件 E:\nodejs\node_global\vue.ps1，因为在此系统上禁止运行脚本

1.PowerShelll的执行政策阻止了该操作

用 get-ExecutionPolicy 查看执行策略的状态为受限



2.此时我们要输入 Set-ExecutionPolicy-Scope CurrentUser 命令，在下一行输入 RemoteSigned 解除受限状态



3.接下来输入 get-ExecutionPo..]]></description><category></category></item><item><title><![CDATA[MongoDB详细安装与配置_BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/121786391</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/121786391</guid><author>BaiMoci</author><pubDate>Wed, 08 Dec 2021 11:17:45 +0800</pubDate><description><![CDATA[1.下载

首先下载安装MongoDB

在官网MongoDB Community Download | MongoDB下载，看自己需要的版本



2.安装

下载完成是这样的



双击打开安装

next下一步



选择Complete,表示安装默认C盘

选择Cuxtom，表示自定义安装路径（推荐）



next下一步



这里选择Install MongoD as a Service，可以创建数据库和日志的路径，分别在最下面的Data Directory和Log Directory。...]]></description><category></category></item><item><title><![CDATA[Nodejs(express)数据的增删改查以及路由的分离__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/120131356</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/120131356</guid><author>BaiMoci</author><pubDate>Mon, 06 Sep 2021 15:04:35 +0800</pubDate><description><![CDATA[操作 MongoDB 数据库

连接数据库

安装 mongodb 数据库
	在需要启动的盘符根目录下新建 data/db 文件夹
	在命令行对应的盘符下输入 mongod 命令，即可开启服务
	有需要可以下载NoSQLBooster for MongoDB软件
建立数据库模型

npm i mongoose --save
	新建 models.js 操作数据库
紧接上次的博客（https://blog.youkuaiyun.com/BaiMoci/article/details/120059365?spm=1001.]]></description><category></category></item><item><title><![CDATA[Node.js(Express)简单的 get post 请求方法以及路由和中间键__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/120059365</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/120059365</guid><author>BaiMoci</author><pubDate>Thu, 02 Sep 2021 14:00:49 +0800</pubDate><description><![CDATA[一、初始化

创建一个文件夹，如：node_api

通过 npm init 命令创建一个 package.json 文件

此命令默认大部分参数即可，下面的除外，输入你想要的入口文件名称：


entry point: (app.js)

再输入一下命令安装express


npm install express --save

二、运行

创建 app.js 文件，输入以下代码


const express = require('express')    //引入express,返回构造函数
co.]]></description><category></category></item><item><title><![CDATA[【Express】nodejs：express 简单入门__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119999372</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119999372</guid><author>BaiMoci</author><pubDate>Mon, 30 Aug 2021 16:18:40 +0800</pubDate><description><![CDATA[Express 简单入门



Express 是一个基于Node.js 平台，快速、开放、极简的web 开发框架

Express 框架是后台的Node 框架，所以和jQuery、zepto、yui、bootstrap 都不一个东西。Express 在后台的受欢迎的程度类似前端的jQuery，就是企业的事实上的标准。

Express 特点


	Express 是一个基于Node.js 平台的极简、灵活的web 应用开发框架，它提供一系列强大的特性，帮助你创建各种Web 和移动设备应用...]]></description><category></category></item><item><title><![CDATA[微信小程序点击事件传参__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119997589</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119997589</guid><author>BaiMoci</author><pubDate>Mon, 30 Aug 2021 15:14:28 +0800</pubDate><description><![CDATA[首先 bindtap绑定点击事件，

在标签中利用 data-xxx 来定义你要传入的参数，，

然后事件中传入 event 用 event.currentTarget.dataset.xxx来取你传入的值

小程序的点击传参事件，与一般前端开发场景中直接添加参数的方式不同，采用事件对象自定义属性的方式，例如&lt;view bindtap="passQuery" data-index="1"&gt;点击传递参数&lt;/view&gt;

js部分


 passQuery:function(e){...]]></description><category></category></item><item><title><![CDATA[微信小程序开发的基本流程__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119994455</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119994455</guid><author>BaiMoci</author><pubDate>Mon, 30 Aug 2021 12:20:51 +0800</pubDate><description><![CDATA[一、注册微信小程序

在创建自己的微信小程序之前,首先需要注册小程序账号,有如下账号类型：



具体的注册流程,可以参考官方的简易教程





二、安装工具,创建项目

第一步：下载微信小程序开发者工具并安装，下载路径：

https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html

进到下载界面后，根据自己的操作系统选择相应的链接进行下载，下载完成后进行安装。

第二步：安装登录工具

开发者工具安装完成后我们就可以将其打开，...]]></description><category></category></item><item><title><![CDATA[微信小程序介绍__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119994272</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119994272</guid><author>BaiMoci</author><pubDate>Mon, 30 Aug 2021 12:01:17 +0800</pubDate><description><![CDATA[1,微信小程序简称小程序，张小龙在微信公开课 Pro 上发布的小程序正式上线，时间是2017年1月9日。

2,微信小程序这个词可以分解为“微信”和“小程序”两部分

(1),其中“微信”可以理解为“微信中的”，指的是小程序的执行环境；当然微信在提供执行环境的同时也延长了用户使用微信的时间。

(2),“小程序”是说它首先是程序，然后具备轻便的特征。小程序并不像其他应用那样，它不需要安装，而是通过扫描二维码等打开后直接执行；用完以后也不需要卸载。这就是所谓用完即走的原则。

3,微信小程序，很多类似形态的应]]></description><category></category></item><item><title><![CDATA[vue-router 的全局导航钩子函数__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119993054</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119993054</guid><author>BaiMoci</author><pubDate>Mon, 30 Aug 2021 11:12:08 +0800</pubDate><description><![CDATA[模块一：全局导航钩子函数

1、vue router.beforeEach（全局前置守卫）

beforeEach的钩子函数，它是一个全局的before 钩子函数， （before each）意思是在 每次每一个路由改变的时候都得执行一遍。

它的三个参数：

to: (Route路由对象) 即将要进入的目标 路由对象 to对象下面的属性： path params query hash fullPath matched name meta（在matched下，但是本例可以直接用）

from: (Route]]></description><category></category></item><item><title><![CDATA[MVVM的概念、原理及实现__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119992823</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119992823</guid><author>BaiMoci</author><pubDate>Mon, 30 Aug 2021 11:06:11 +0800</pubDate><description><![CDATA[代码实现来源于珠峰公开课mvvm原理的讲解。此文在此记录一下，通过手写几遍代码加深一下自己对mvvm理解。

1、MVVM的概念

  model-view-viewModel，通过数据劫持+发布订阅模式来实现。

  mvvm是一种设计思想。Model代表数据模型，可以在model中定义数据修改和操作的业务逻辑;view表示ui组件，负责将数据模型转换为ui展现出来，它做的是数据绑定的声明、 指令的声明、 事件绑定的声明。;而viewModel是一个同步view和model的对象。在mvvm框架中...]]></description><category></category></item><item><title><![CDATA[Vue安装及环境配置__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119991876</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119991876</guid><author>BaiMoci</author><pubDate>Mon, 30 Aug 2021 10:54:03 +0800</pubDate><description><![CDATA[一、安装node.js

官网：https://nodejs.org/en/download/

历史版本：https://nodejs.org/en/download/releases/



下载完毕后，可以安装node，建议不要安装在系统盘





二、设置nodejs prefix（全局）和cache（缓存）路径

1、在nodejs安装路径下，新建node_global和node_cache两个文件夹



2、设置缓存文件夹


npm config set cache "D:\vueP...]]></description><category></category></item><item><title><![CDATA[Vue生命周期解析__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119991605</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119991605</guid><author>BaiMoci</author><pubDate>Mon, 30 Aug 2021 10:24:27 +0800</pubDate><description><![CDATA[详解Vue Lifecycle

先来看看vue官网对vue生命周期的介绍





Vue实例有一个完整的生命周期，也就是从开始创建、初始化数据、编译模板、挂载Dom、渲染→更新→渲染、销毁等一系列过程，我们称这是Vue的生命周期。通俗说就是Vue实例从创建到销毁的过程，就是生命周期。

每一个组件或者实例都会经历一个完整的生命周期，总共分为三个阶段：初始化、运行中、销毁。


	实例、组件通过new Vue() 创建出来之后会初始化事件和生命周期，然后就会执行beforeCreate钩子函数，这个时候.]]></description><category></category></item><item><title><![CDATA[Vuex简单理解__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119990929</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119990929</guid><author>BaiMoci</author><pubDate>Mon, 30 Aug 2021 10:14:58 +0800</pubDate><description><![CDATA[概念

    Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态，并以相应的规则保证状态以一种可预测的方式发生变化。

安装

HTML 中使用 script 标签引入

&lt;script src="vue.js"&gt;&lt;/script&gt;
&lt;script src="vuex.js"&gt;&lt;/script&gt;



2.Vue项目中使用 npm 下载安装（需要安装 Node 环境）


// 下载
npm...]]></description><category></category></item><item><title><![CDATA[MongoDB入门教程__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119951609</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119951609</guid><author>BaiMoci</author><pubDate>Sat, 28 Aug 2021 03:20:48 +0800</pubDate><description><![CDATA[简介

MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

MongoDB 是一个介于关系数据库和非关系数据库之间的产品，是非关系数据库当中功能最丰富，最像关系数据库的。

下面是Sql与mongodb的术语对比




...]]></description><category></category></item><item><title><![CDATA[Vue中ref和$refs的介绍以及使用方法示例__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119932431</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119932431</guid><author>BaiMoci</author><pubDate>Thu, 26 Aug 2021 15:35:19 +0800</pubDate><description><![CDATA[前言

在JavaScript中需要通过document.querySelector("#demo")来获取dom节点，然后再获取这个节点的值。在Vue中，我们不用获取dom节点，元素绑定ref之后，直接通过this.$refs即可调用，这样可以减少获取dom节点的消耗。

ref介绍

ref被用来给元素或子组件注册引用信息。引用信息将会注册在父组件的 $refs对象上。如果在普通的 DOM 元素上使用，引用指向的就是 DOM 元素；如果用在子组件上，引用就指向该子组件实例

通俗的讲，ref特性就是为元]]></description><category></category></item><item><title><![CDATA[简单理解Vue nextTick__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119931007</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119931007</guid><author>BaiMoci</author><pubDate>Thu, 26 Aug 2021 14:45:30 +0800</pubDate><description><![CDATA[Vue中的nextTick涉及到Vue中DOM的异步更新，感觉很有意思，特意了解了一下。其中关于nextTick的源码涉及到不少知识，很多不太理解，暂且根据自己的一些感悟介绍下nextTick。

一、示例

Vue实例



点击前



点击后



二、应用场景

下面了解下nextTick的主要应用的场景及原因。

在Vue生命周期的created()钩子函数进行的DOM操作一定要放在Vue.nextTick()的回调函数中
	在c...]]></description><category></category></item><item><title><![CDATA[Vue配置axios跨域代理__BaiMoci]]></title><link>https://blog.youkuaiyun.com/BaiMoci/article/details/119925452</link><guid>https://blog.youkuaiyun.com/BaiMoci/article/details/119925452</guid><author>BaiMoci</author><pubDate>Thu, 26 Aug 2021 10:21:55 +0800</pubDate><description><![CDATA[Vue使用axiso、axios配置跨域

一、Vue-cli使用axios

1、安装命令：cnpm install axios --save

2、main.js引入全局使用

Import axios from ‘axios’

Vue.prototype.$axios = axios

3、组件或页面中使用

methods: 

{ 

testAxios1:function(){

console.log('test...]]></description><category></category></item></channel></rss>