<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[jj_0628的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/jj_0628</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; jj_0628]]></copyright><item><title><![CDATA[前端项目配置 Nginx 全攻略]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/145845585</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/145845585</guid><author>jj_0628</author><pubDate>Tue, 25 Feb 2025 10:44:21 +0800</pubDate><description><![CDATA[在前端开发中，项目开发完成后，如何高效、稳定地将其部署到生产环境是至关重要的一步。Nginx 作为一款轻量级、高性能的 Web 服务器和反向代理服务器，凭借其出色的性能和丰富的功能，成为了前端项目部署的首选方案。本文将详细介绍在 Nginx 已安装好的基础上，如何进行前端项目的配置，让你的前端项目顺利上线。]]></description><category></category></item><item><title><![CDATA[css部分知识点总结display:block；display:inline；清除浮动；css3新特性；box-sizing属性]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/123908284</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/123908284</guid><author>jj_0628</author><pubDate>Fri, 01 Apr 2022 21:29:41 +0800</pubDate><description><![CDATA[block：块级元素

1、处于常规文档流时，如果不设置宽度，则自动填满父元素

2、可以应用margin、padding

3、不设置高度的情况，父级会自测子级高度包含子级

4、vertical-align不起作用

5、在常规文档流中布局时会独占一个水平空间

inline：

1、margin、padding在水平方向有效，在垂直方向无效

2、width、height在非替换行内元素无效，宽度由内容决定

3、非替换行内元素的行框高有line-height决定，替换行内元素则由height、mar]]></description><category></category></item><item><title><![CDATA[js事件循环机制]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/123908152</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/123908152</guid><author>jj_0628</author><pubDate>Fri, 01 Apr 2022 21:22:00 +0800</pubDate><description><![CDATA[javascript是单线程非阻塞的脚本语言 单线程意味着javascript在执行代码的任何时候，都只有一个主线程在执行任务；非阻塞是通过事件循环实现的

event loop 主要分为三个部分 主线程 宏队列 微队列

js的任务队列分为同步任务和异步任务，所有的同步任务都在主线程执行，异步任务在宏队列或微队列中

宏队列：setTimeout setInterval setImmediate I/O UI rendering

微队列：promise.then , process.nextTick（p]]></description><category></category></item><item><title><![CDATA[vue调用子组件作为弹窗时只执行一次created问题]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/123908065</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/123908065</guid><author>jj_0628</author><pubDate>Fri, 01 Apr 2022 21:17:49 +0800</pubDate><description><![CDATA[解决办法：用v-if将子组件包裹起来，因为v-if=false时可以将子组件销毁掉，再次调用时重新渲染



补充知识：vue如何每次打开子组件弹窗都进行初始化   :visible.sync 与 v-if同时使用即可
]]></description><category></category></item><item><title><![CDATA[vue axios多次请求一个接口取消前面请求]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/123907971</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/123907971</guid><author>jj_0628</author><pubDate>Fri, 01 Apr 2022 21:14:09 +0800</pubDate><description><![CDATA[方法一


    var CancelToken = axios.CancelToken;
    var source = CancelToken.source(); // 每次调用接口之前都赋值一下 不然不会触发请求
    axios.get('/user/12345', {//get请求在第二个参数
     cancelToken: source.token
    }).catch(function(thrown) {
    });
    axios.post('/user/12345',]]></description><category></category></item><item><title><![CDATA[webpack打包概念整理]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/123907397</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/123907397</guid><author>jj_0628</author><pubDate>Fri, 01 Apr 2022 21:06:04 +0800</pubDate><description><![CDATA[一、webpack的更新流程

1、初始化参数：根据配置文件和shell语句读取、合并，得到最终参数

2、开始编译：根据上一步得到的参数初始化，调用函数的run方法开始编译

3、确定入口文件：根据entry确定所有的入口文件

4、模块编译：根据入口文件，调用所有的loader进行模块的编译，再找出与该模块依赖的模块，根据递归将所有入口文件都进行处理；

5、完成模块编译：经过上一步通过loader对模块编译，得到被编译的最终内容和模块之间的依赖关系

6、输出资源：根据模块之间的依赖关系，组装成一个个]]></description><category></category></item><item><title><![CDATA[SCSS使用方法详解]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/107151936</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/107151936</guid><author>jj_0628</author><pubDate>Mon, 06 Jul 2020 15:32:20 +0800</pubDate><description><![CDATA[SCSS (Sassy CSS)，它是一款css预处理语言，是 Sass 3 引入新的语法，其语法完全兼容 CSS3，并且继承了 Sass 的强大功能

并且Sass可以帮助我们减少css重复的代码，减少开发时间。那么Sass有什么强大并且高级的功能呢？例如：变量、嵌套、导入import、混合mixin、继承extend

那就从简单一点的开始入手啦！举个????

下面这个小????是 ’&amp;‘关键字，意义是引用父级选择器，在这里’&amp;‘代指.container


.container{
 ]]></description><category></category></item><item><title><![CDATA[vue elementui中选择器（select）多选时添加全选功能]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/103685899</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/103685899</guid><author>jj_0628</author><pubDate>Tue, 24 Dec 2019 17:08:46 +0800</pubDate><description><![CDATA[存在这样一个问题，当下拉列表中的选项过多时，想要全部选中，目前elementui的select多选中没有提供全选功能，想要解决这个问题分为以下步骤

首先将从后台获取过来的下拉列表数据中添加一个”全选“的选项
	当选中项发生变化时进行一系列判断
     1、当前选中数据中存在’全选‘的选项，则将下拉数据赋值给v-model绑定的数据

     2、与旧数据（上次选中数据）进...]]></description><category></category></item><item><title><![CDATA[vue Elementui 引入第三方icon(阿里矢量库)]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/103027785</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/103027785</guid><author>jj_0628</author><pubDate>Tue, 12 Nov 2019 15:04:57 +0800</pubDate><description><![CDATA[在做项目的过程中，发现elementui图标比较少，根据ui好多图标都没有，被迫只能通过引入第三方图标啦，自己通过参考其他教程，整理一下过程呀

首先呢 需要去阿里矢量图库注册账号呀

接下来，需要新建项目 打开“图标管理”中“我的项目”，点击新建

emmm，填写项目名称与那个什么什么前缀，名称可以任意，需要注意前缀不可以和elementui前缀相同哦，填写完后点击新建就可以啦



继续呀， ...]]></description><category></category></item><item><title><![CDATA[vue+elementui 折叠面板的全部展开与全部显示功能]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/103004808</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/103004808</guid><author>jj_0628</author><pubDate>Mon, 11 Nov 2019 10:03:03 +0800</pubDate><description><![CDATA[最近的项目中涉及到了折叠面板的全部展开与全部显示功能

下面就大致的总结一下

第一种情况：开始显示全部展开（这时面板全部都是收缩的），当其中的一个面板被手动打开，那么就显示全部收缩（这时面板至少一个被打开）这个是比较简单的，看一下怎么实现吧!

1. 首先需要在折叠面板中绑定activeName，activeName用来装每个面板的唯一标识


&lt;el-collapse v-model="...]]></description><category></category></item><item><title><![CDATA[vue Echarts 自适应问题]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/102968416</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/102968416</guid><author>jj_0628</author><pubDate>Fri, 08 Nov 2019 10:40:46 +0800</pubDate><description><![CDATA[上篇讲了Echarts饼图的具体使用方法

下面说下做项目过程中遇到的图的自适应问题

1. 适应浏览器窗口（上篇的具体代码中有哦）


window.onresize = myChart.resize  //自适应浏览器窗口的大小

2.最近的项目中，由于页面上有侧边栏，侧边栏进行收缩时，饼图不能自适应，windows自带的resize只能监听到窗口的变化，要解决的是监听某个元素区域的变化而使...]]></description><category></category></item><item><title><![CDATA[vue  Echarts之饼图的详解]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/102967753</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/102967753</guid><author>jj_0628</author><pubDate>Fri, 08 Nov 2019 10:26:58 +0800</pubDate><description><![CDATA[最近项目中用到了Echarts,下面就来说下具体是怎么用的吧

一、安装Echarts 


npm install echarts --save

二、在main.js中引入


import echarts from 'echarts'
Vue.prototype.$echarts = echarts

三、接下来要详细的介绍饼图的使用啦

在具体组件中进行引用（就像通过import...]]></description><category></category></item><item><title><![CDATA[vue 父子组件传值 子组件修改父组件值的解决办法]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/102966527</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/102966527</guid><author>jj_0628</author><pubDate>Fri, 08 Nov 2019 09:17:28 +0800</pubDate><description><![CDATA[最近在前端项目中遇到了父子组件传值的问题...

vue中父组件向子组件传值时，其父子prop之间形成单向下行绑定，反过来则不行，这样会防止子组件意外改变父组件的值，从而数据流变的难以理解；另外，每次父组件的数据发生更新时，子组件的都会刷新到最新的数据，但不能改变子组件内部改变prop，这样浏览器就会发出警告

解决办法来啦

解决办法一、子组件想要修改时，需要通过$emit派发一个自定义事件，父...]]></description><category></category></item><item><title><![CDATA[JAVA基础之数组]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/80627927</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/80627927</guid><author>jj_0628</author><pubDate>Fri, 08 Jun 2018 21:19:50 +0800</pubDate><description><![CDATA[数组的创建：        语法格式一：先声明后创建。例如：int[] arr；arr=new int[10]; (创建一个长度为10的整型数组)        语法格式二：声明的同时创建数组，例如，int[] arr=new int[10](数组长度必须指定)数组内存的存储：         数组会被分配连续的内存空间数组的初始化：         声明数组的同时给数组赋值，叫做数组的初始化，例...]]></description><category></category></item><item><title><![CDATA[java基础之利用猜数字游戏理解生成随机数方法]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/80528246</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/80528246</guid><author>jj_0628</author><pubDate>Thu, 31 May 2018 18:19:44 +0800</pubDate><description><![CDATA[Math类的random()方法：这个方法可以Math.random()方法可以生成大于等于0.0、小于1.0的double型随机数。Math.random()方法语句基础上处理可获得多种类型、或任意范围的随机数。下面用一个猜数字游戏演示一下这个方法：import java.util.Scanner;

public class GuessDemo {

	public static void m...]]></description><category></category></item><item><title><![CDATA[Java基础之逻辑运算符&和&&的区别]]></title><link>https://blog.youkuaiyun.com/jj_0628/article/details/80387805</link><guid>https://blog.youkuaiyun.com/jj_0628/article/details/80387805</guid><author>jj_0628</author><pubDate>Mon, 21 May 2018 09:32:00 +0800</pubDate><description><![CDATA[    &amp;amp;&amp;amp;也称“短路运算符”，意思为如果第一个表达式就能决定整个表达式的结果，运算符右边的表达式就不再计算。而&amp;amp;则是整个表达式都会走一遍，举个简单的例子：public class LogicalOperater{
    static int n=3;
    public static void main(String[] args){
       boolean b...]]></description><category></category></item></channel></rss>