<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[fly_666的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/fly_666</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; fly_666]]></copyright><item><title><![CDATA[mac mini m4安装node.js@16以下版本方法]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/149068709</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/149068709</guid><author>fly_666</author><pubDate>Wed, 02 Jul 2025 14:20:26 +0800</pubDate><description><![CDATA[原因：Node.js 14 发布时，Apple Silicon（M1/M2）尚未普及，因此 没有官方预编译的 macOS ARM64 版本。目的：使用nvm 安装 node.js@14.x 版本。设备：mac mini m4。]]></description><category></category></item><item><title><![CDATA[vue2.x 富文本组件 支持图片、文件、视频上传]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/137769456</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/137769456</guid><author>fly_666</author><pubDate>Mon, 15 Apr 2024 09:59:59 +0800</pubDate><description><![CDATA[vue2.x 富文本组件 支持图片、文件、视频上传。]]></description><category></category></item><item><title><![CDATA[vue 词云]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/137603646</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/137603646</guid><author>fly_666</author><pubDate>Wed, 10 Apr 2024 17:13:54 +0800</pubDate><description><![CDATA[vue 词云 按照数据的大小显示深浅程度]]></description><category></category></item><item><title><![CDATA[vue-cli打包 nodejs内存溢出 vue2.x Last few GCs]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/137348165</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/137348165</guid><author>fly_666</author><pubDate>Wed, 03 Apr 2024 15:54:18 +0800</pubDate><description><![CDATA[nodejs内存溢出 vue-cli打包内容溢出 vue2.x打包报错
Last few GCs 
Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
]]></description><category></category></item><item><title><![CDATA[vue 滚动触底加载下一页]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/136397757</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/136397757</guid><author>fly_666</author><pubDate>Fri, 01 Mar 2024 15:40:43 +0800</pubDate><description><![CDATA[【代码】vue 滚动触底加载下一页。]]></description><category></category></item><item><title><![CDATA[vue中inheritAttrs、$attrs与$listners的使用]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/127392127</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/127392127</guid><author>fly_666</author><pubDate>Tue, 18 Oct 2022 16:56:47 +0800</pubDate><description><![CDATA[vue中inheritAttrs、$attrs与$listners的使用]]></description><category></category></item><item><title><![CDATA[Babel/Plugin -JS支持ES6新语法[可选链操作符/空值合并操作符/空值合并操作符]]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/125485808</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/125485808</guid><author>fly_666</author><pubDate>Mon, 27 Jun 2022 16:01:01 +0800</pubDate><description><![CDATA[Babel/Plugin -JS支持ES6新语法[可选链操作符/空值合并操作符/空值合并操作符]]]></description><category></category></item><item><title><![CDATA[uniapp 上下滚动头部固定，左右滚动左侧边栏固定布局]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/125412508</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/125412508</guid><author>fly_666</author><pubDate>Wed, 22 Jun 2022 16:48:34 +0800</pubDate><description><![CDATA[uniapp 上下滚动头部固定，左右滑动左侧固定]]></description><category></category></item><item><title><![CDATA[vue实现手风琴下拉菜单带动画效果]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/123252875</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/123252875</guid><author>fly_666</author><pubDate>Thu, 03 Mar 2022 14:21:03 +0800</pubDate><description><![CDATA[1、添加collapse-transition.js
const elTransition = '0.3s height ease-in-out';
const Transition = {
    beforeEnter(el) {
        el.style.transition = elTransition;
        if (!el.dataset) el.dataset = {};
        el.style.height = 0;
    },
    enter(el) {
]]></description><category></category></item><item><title><![CDATA[uni-app px rpx 互相转换]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/122668848</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/122668848</guid><author>fly_666</author><pubDate>Mon, 24 Jan 2022 15:50:07 +0800</pubDate><description><![CDATA[1、rpx 转 px
// 100 为 100rpx的值
var px = uni.upx2px(100);

2、px 转 rpx
// 200 为 px 的值，后面的两个 100 为计算比例使用
var rpx = 200/(uni.upx2px(100)/100);
 
// 验证上面rpx的值
var px = uni.upx2px(rpx);    // px的值 = 200


...]]></description><category></category></item><item><title><![CDATA[vue组件间通信7种方式]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/122254367</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/122254367</guid><author>fly_666</author><pubDate>Fri, 31 Dec 2021 14:14:18 +0800</pubDate><description><![CDATA[1、 props/$emit
props：props可以是数组或对象，用于接收来自父组件通过v-bind传递的数据。当props为数组时，直接接收父组件传递的属性；当 props 为对象时，可以通过type、default、required、validator等配置来设置属性的类型、默认值、是否必传和校验规则。
$emit：在父子组件通信时，我们通常会使用$emit来触发父组件v-on在子组件上绑定相应事件的监听。

父向子传值：父组件通过:messageFromParent="message"将父组件 m]]></description><category></category></item><item><title><![CDATA[el-select滚动到底部加载更多]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/120952829</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/120952829</guid><author>fly_666</author><pubDate>Mon, 25 Oct 2021 15:26:36 +0800</pubDate><description><![CDATA[自定义指令：

  directives: {
    'loadmore': {
      inserted(el, binding) {
        const SELECTWRAP_DOM = el.querySelector('.el-select-dropdown .el-select-dropdown__wrap');
        SELECTWRAP_DOM.addEventListener('scroll', function() {
          const conditi]]></description><category></category></item><item><title><![CDATA[git status 暂存]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/120491241</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/120491241</guid><author>fly_666</author><pubDate>Sun, 26 Sep 2021 16:20:42 +0800</pubDate><description><![CDATA[查看当前状态
git status 

如果有修改,添加修改文件
git add .

暂存操作
git stash save '暂存标识名称'

查看记录
git stash list

恢复指定的暂存工作, 暂存记录保存在list内,需要通过list索引index取出恢复

恢复后,暂存区域会删除当前的记录

git stash pop stash@{index}


恢复后,暂存区域会保留当前的记录

git stash apply stash@{index}


...]]></description><category></category></item><item><title><![CDATA[移动端touch事件滚动]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/120118329</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/120118329</guid><author>fly_666</author><pubDate>Sun, 05 Sep 2021 17:47:15 +0800</pubDate><description><![CDATA[本来想用在北京欢乐谷手机上用touch事件来模拟局部左右内容滚动里，但在touchmove上下滚动时由于禁止了默认事件而body滚动条不能滚动，虽然可以根据touchmove的坐标来判断方向，但体验效果不理想。
后来在查询相关资料后原来可以直接在css中使用overflow:auto;出来的滚动条用CSS3的-wekit-scrollbar{display:none}来隐藏;
*拓展
*::-webkit-scrollbar 滚动条整体部分
*::-webkit-scrollbar-thumb 滚动条里面的]]></description><category></category></item><item><title><![CDATA[前端常见跨域解决方案]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/119379661</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/119379661</guid><author>fly_666</author><pubDate>Wed, 04 Aug 2021 11:06:56 +0800</pubDate><description><![CDATA[转载：https://segmentfault.com/a/1190000011145364

]]></description><category></category></item><item><title><![CDATA[element ui el-scrollbar组件监听滚动返回顶部]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/119316811</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/119316811</guid><author>fly_666</author><pubDate>Mon, 02 Aug 2021 09:13:36 +0800</pubDate><description><![CDATA[转载：https://segmentfault.com/a/1190000020516669

]]></description><category></category></item><item><title><![CDATA[CSS 实现多行文本“展开收起”]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/117476287</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/117476287</guid><author>fly_666</author><pubDate>Wed, 02 Jun 2021 17:32:31 +0800</pubDate><description><![CDATA[效果图：

实现这一类布局和交互难点主要有以下几点

位于多行文本右下角的“展开收起”按钮
“展开”和“收起”两种状态的切换
当文本不超过指定行数时，不显示“展开收起”按钮

说实话，之前单独看这个布局，即使借助 JavaScript 也不是一件容易的事啊（需要计算文字宽度动态截取文本，vue-clamp就是这么做的），更别说下面的交互和判断逻辑了，不过经过我的一番琢磨，其实纯 CSS 也能完美实现的，下面就一步一步来看看如何实现吧~
一、位于右下角的“展开收起”按钮
很多设计同学都喜欢这样的设计，把按钮放]]></description><category></category></item><item><title><![CDATA[git在未push到远程的情况下撤销本地commit]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/116450423</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/116450423</guid><author>fly_666</author><pubDate>Thu, 06 May 2021 11:41:10 +0800</pubDate><description><![CDATA[撤销所有：
git reset HEAD~

撤销指定记录
git reflog                //查看历史记录操作，查看提交版本

git reset --hard [索引值]  //索引值为记录每条历史记录操作的哈希值


ps：撤销后修改项不会被删除  页面上可看到修改记录

...]]></description><category></category></item><item><title><![CDATA[css 变量注入]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/116207136</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/116207136</guid><author>fly_666</author><pubDate>Tue, 27 Apr 2021 18:20:14 +0800</pubDate><description><![CDATA[&lt;template&gt;
  &lt;div class="box" :style="styleVar"&gt;
  &lt;/div&gt;
&lt;/template&gt;
&lt;script&gt;
export default {
  props: {
    height: {
      type: Number,
      default: 54,
    },
  },
  computed: {
    styleVar() {
      return {
        ]]></description><category></category></item><item><title><![CDATA[git stash 在不提交的情况下临时缓存文件]]></title><link>https://blog.youkuaiyun.com/fly_666/article/details/110229822</link><guid>https://blog.youkuaiyun.com/fly_666/article/details/110229822</guid><author>fly_666</author><pubDate>Fri, 27 Nov 2020 14:11:01 +0800</pubDate><description><![CDATA[查看待缓存文件     git status
 “临时保存标签”    git stash save

查看临时保存的标签    git stash list

查看临时缓存的文件明细   git stash show

恢复临时缓存的文件    git stash apply

转载：https://www.cnblogs.com/zndxall/archive/2018/09/04/9586088.html

...]]></description><category></category></item></channel></rss>