LY

Results 101 issues of LY

### 1. 标签实现新窗口打开: 官方文档中说 v-link 指令被 组件指令替代,且 不支持 target="_blank" 属性,如果需要打开一个新窗口必须要用标签,但事实上vue2版本的 是支持 target="_blank" 属性的(tag="a"),如下: ```vue 新页面打开home页 ``` ### 2、编程式导航: 有些时候需要在单击事件或者在函数中实现页面跳转,那么可以借助router的示例方法,通过编写代码实现。我们常用的是 $router.push 和 $router.go 但是vue2.0以后,这种方式就不支持新窗口打开的属性了,这个时候就需要使用 `this.$router.resolve` ,如下: ```vue seeShare(){ let routeUrl =...

Vue

# 使用笔记本触摸板复制粘贴的技巧 - 1. 方法一: 选中一个词显然是双击,选中一个段落显然是三击。 - 2. 方法二: 双击后,按住shift键或是先按住shift健再双击,然后配合键盘右下的上下左右箭头就能自由复制了。 - 3. 方法三: 先在你要复制的区域起始位置点击一下,按住shift(或者先按住shift再点击),把鼠标移动到要复制的末尾,点击一下,就选好了。

技巧

### 原因 这个问题产生的原因是因为IE不支持console语法,如果语句中有console,只有在控制台打开的时候才会执行代码。 ### 解决方案 有两种解决方案: **方案1** 对于使用webpack打包的项目,处理起来就比较简单了,在webpack.conf.js 中,uglifyjsPlugin插件中添加配置项: ```js uglifyOptions: { compress: { drop_console:true } } ``` 这样打包之后就会自动删除所有的console; **方案2** 在页面头部添加代码,对console进行判断,是否识别: ```js if(!window.console){ window.console = {}; } if (!window.console.log) {...

JS

# 前端面试常见问题汇总 ## CSS ### 1. @mixin 中的 `@include` 和 `@extend` 的区别(sass) ### 列举不同的清除浮动的技巧 ```css /* 1. 添加新元素 */ .clearfix { clear: both; } /* 2. 为父元素增加样式 */ .clearfix {...

面试

react和vue的业务逻辑是差不多,vue在react上封装了更简洁的方法,使用起来更加的便捷,如:提供了便捷的指令(v-for,v-if,v-model),还提供了更多的属性(computed,watch),我还是比较喜欢用react的,更接近js原生,更容易于理解它。 # vue的生命周期 ### 一 如下图所示(很清晰)初始化、编译、更新、销毁 ![img](https://ask.qcloudimg.com/http-save/yehe-3615838/seraqj8cwd.jpeg?imageView2/2/w/1620) ### 二 vue生命周期的栗子 注意触发vue的created事件以后,this便指向vue实例,这点很重要 ```javascript var myVue = new Vue({ el: ".test", data: { a: "我是内容,在控制台输入myVue.a=123456,可以改变我的值" }, created: function() { //在实例创建之后同步调用。此时实例已经结束解析选项,这意味着已建立:数据绑定,计算属性,方法,watcher/事件回调。 //但是还没有开始 DOM...

Vue
React
JS

# 处理 JavaScript 复杂对象:深拷贝、Immutable & Immer 我们知道 js 对象是按共享传递(`call by sharing`)的,因此在处理复杂 js 对象的时候,往往会因为修改了对象而产生副作用———因为不知道谁还引用着这份数据,不知道这些修改会影响到谁。因此我们经常会把对象做一次拷贝再放到处理函数中。最常见的拷贝是利用 `Object.assign()`新建一个副本或者利用 ES6 的 对象解构运算,但它们仅仅只是浅拷贝。 ## 深拷贝 如果需要深拷贝,拷贝的时候判断一下属性值的类型,如果是对象,再递归调用深拷贝函数即可,具体实现可以参考 jQuery 的 `$.extend`。实际上需要处理的逻辑分支比较多,在 lodash 中 的深拷贝函数 cloneDeep 甚至有上百行,那有没有简单粗暴点的办法呢? ### JSON.parse...

JS
Immutable.js

## 为 JavaScript 开发人员准备的 Dart 参考教程 Dart 是 Flutter 主要的开发语言,这一篇文章主要为 JavaScript 开发人员准备的 Dart 教程,我会用很详细的对比来参考,力争 JavaScript 开发人员可以快速的熟练使用 Dart,为使用 Flutter 做好准备; > 使用 es2015 做为参照; 示例可以使用 [https://dartpad.dartlang.org/](https://dartpad.dartlang.org/) 来运行;Dart 和 JavaScript 有非常重要的不同,Dart2 开始它变成了一个强类型的语言,JavaScript...

Dart

# Git如何切换远程仓库地址 > 有时候,我们想吧一个项目开源出去,提交到 github 上面去,免不了就要切换远程仓库地址。那这个时候有什么办法解决呢? 据目前自己了解,有三种方法。 ## 一. 修改命令 ```shell git remote set-url origin url ``` ## 二. 先删后增 ```shell git remote rm origin git remote add origin [email protected]:ly2011/example.git...

Git
Github

早先我在 [Vue.js 你不知道的一些小技巧](https://juejin.im/post/5be01d0ce51d450700084925#heading-14) 一文中简单介绍过 `scopedSlots` 的使用场景,但不是很详细。群里也有好多同学问关于 `scopedSlots` 如何使用,当然自己也有点小生疏。今天借此机会重新梳理下,以便日后学习之用。文笔有限,有不对或阐述有误的地方希望留言斧正! ## 谁可以看? 本文针对有下面情况的同学: - 经常使用 Render 函数 和 Jsx 语法开发组件的同学 - 基础薄弱想进一步提升的同学 ## 你会学到什么? - ScopedSlots 的使用 ## 和 slot-scope 的区别? 下面的区别仅仅代表个人理解:...

Vue

> [JavaScript问题集锦](https://github.com/creeperyang/blog/issues/2)

总结
JS
ES6