Skip to content

Commit

Permalink
vue部分新增
Browse files Browse the repository at this point in the history
  • Loading branch information
unknown committed Sep 21, 2018
1 parent c8010f5 commit cd7a598
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 3 deletions.
2 changes: 1 addition & 1 deletion Electron/SingleInstance.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
app.makeSingleInstance(callback)
argv String[] // 第二个实例的命令行参数数组
workingDirectory String // 第二个实例的工作目录
// 返回 Boolean.
// 返回 Boolean.
```

上面是官方文档给出的解释,这个API就是为了生成单个实例而存在的。实际上更主要的用处是用来处理在命令行打开应用是的限制,其实在mac上通过图标打开尝试启动第二个实例的时候,系统会自动强制执行单个实例。并且发出 open-file 和 open-url 事件。但是当用户在命令行中启动应用程序时, 系统的单实例机制将被绕过, 所以我们要用这个方法来保证单实例。
Expand Down
13 changes: 13 additions & 0 deletions Javascript/捋清楚ES6中的Class.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# 捋清楚ES6中的class

在近期工作中开始使用```class```这个关键字。便顺手总结了一些

## 关于类

> ECMAScript 2015 中引入的 JavaScript 类实质上是 JavaScript 现有的基于原型的继承的语法糖。类语法不会为JavaScript引入新的面向对象的继承模型。 --来自MDN
从上面这句话我们呢可以明确得看出,ES6中出现得类只是一个 **特殊得函数**。也就是说它并不是想Java等强类型中得class那样是个面向对象得继承模型。它实质上仅仅是一个语法糖而已。

### 基础知识


32 changes: 30 additions & 2 deletions Vue/Vue开发中问题集锦.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
## Vue

- **keep-alive**(借鉴大佬博客)
### **keep-alive**(借鉴大佬博客)

有的项目大部分组件是没必要多次渲染的,所以 Vue 提供了一个内置组件 keep-alive 来缓存组件内部状态,避免重新渲染,[文档](https://cn.vuejs.org/v2/api/#keep-alive)

Expand Down Expand Up @@ -118,7 +118,7 @@
<router-view></router-view>
</keep-alive>
```
- **关于组件的生命周期**
### **关于组件的生命周期**
一图胜千言
Expand All @@ -141,6 +141,34 @@
---
### **关于组件通信中的.sync修饰符**
这个修饰符是2.3.0 新增的,主要用于组件间的双向通信
> 在有些情况下,我们可能需要对一个 prop 进行“双向绑定”。不幸的是,真正的双向绑定会带来维护上的问题,因为子组件可以修改父组件,且在父组件和子组件都没有明显的改动来源。
因此Vue推荐使用```update:myPropName``` 的模式触发事件取而代之。在我理解这样就和现有的emit系统保持了抛出数据的一致性。而且同时保证了数据的单向流通。这也符合Vue一贯的设计风格
**值 ==> (接收数据)** **事件(emit) => (传播数)**
示例代码如下:
```js
// 子组件手动emit事件 => 这就是一个传播值得过程
this.$emit('update:title', newTitle)
```
``` html
<!-- 父组件接收 -->
<!-- 1 -->
<text-document v-bind:title="doc.title" v-on:update:title="doc.title = $event"></text-document>
<!-- 2简写 -->
<text-document :title.sync="doc.title"></text-document>
```
注意:<span color="red">
将 v-bind.sync 用在一个字面量的对象上,例如 v-bind.sync=”{ title: doc.title }”,是无法正常工作的,因为在解析一个像这样的复杂表达式的时候,有很多边缘情况需要考虑。
</span>

这样得设计很大得提高了组件得可维护性和扩展性。使得组件之间得通讯非常得清除,降低了很大得维护成本


## Vuex

---
Expand Down

0 comments on commit cd7a598

Please sign in to comment.