Skip to content

Commit 90b8fb9

Browse files
committed
docs: improve basic and filter Hacker News example and preview
1 parent a1d02aa commit 90b8fb9

File tree

8 files changed

+30
-30
lines changed

8 files changed

+30
-30
lines changed

docs/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ features:
1010
details: Support top and bottom directions currently, adapt to more different scenes
1111
- title: Result display
1212
details: Configurable load result display, for example no more data, no results and etc
13-
previewLink: //jsfiddle.net/PeachScript/zqb73oLv/embedded/result/
13+
previewLink: //jsfiddle.net/PeachScript/a4Lxbf9w/embedded/result/
1414
---

docs/guide/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
---
2-
previewLink: //jsfiddle.net/PeachScript/zqb73oLv/embedded/result/
2+
previewLink: //jsfiddle.net/PeachScript/a4Lxbf9w/embedded/result/
33
---
44
# Guide
55

66
## Installation
77

88
### NPM
99

10-
If you are building big application now, recommend you use the way.
10+
If you are building large application now, recommend you use the way.
1111

1212
``` bash
1313
npm install vue-infinite-loading -S
@@ -22,7 +22,7 @@ After you imported this plugin through `script` tag, it will register `InfiniteL
2222
You can import this plugin from [unpkg](https://unpkg.com):
2323

2424
``` html
25-
<script src="https://unpkg.com/vue-infinite-loading@2.3.5/dist/vue-infinite-loading.js"></script>
25+
<script src="https://unpkg.com/vue-infinite-loading@^2/dist/vue-infinite-loading.js"></script>
2626
```
2727

2828
#### Manual

docs/guide/start-with-hn.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
previewLink: //jsfiddle.net/PeachScript/zqb73oLv/embedded/result/
2+
previewLink: //jsfiddle.net/PeachScript/a4Lxbf9w/embedded/result/
33
---
44

55
# Start With Hacker News
@@ -8,12 +8,12 @@ As the first step in learning this plugin, we will create a infinite scroll vers
88

99
Firstly, we need to write template, it similar to this (ommited unimportant code):
1010

11-
``` html
11+
``` html {9}
1212
<header>
1313
<!-- Hacker News header -->
1414
</header>
1515

16-
<div v-for="(item, key) in list">
16+
<div v-for="(item, $index) in list" :key="$index">
1717
<!-- Hacker News item loop -->
1818
</div>
1919

@@ -45,7 +45,7 @@ export default {
4545
}).then(({ data }) => {
4646
if (data.hits.length) {
4747
this.page += 1;
48-
this.list = this.list.concat(data.hits);
48+
this.list.push(...data.hits);
4949
$state.loaded();
5050
} else {
5151
$state.complete();

docs/guide/use-with-filter-or-tabs.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
---
2-
previewLink: //jsfiddle.net/PeachScript/bv9Lgj2k/embedded/result/
2+
previewLink: //jsfiddle.net/PeachScript/w197rfy0/embedded/result/
33
---
44

55
# Use With Filter/Tabs
66

7-
The loading process is exactly same as the previous example, the key point is how to reset the component when we changing filter or tabs. The component will reset itself whenever the `identifier` is changed, sounds ease, let's do it!
7+
The loading process is exactly same as the previous example, the key point is how to reset the component when we changing filter or tabs. In fact, this component will reset itself whenever the `identifier` is changed, sounds ease, let's do it!
88

9-
``` html
9+
``` html {12}
1010
<header>
1111
<!-- Hacker News header -->
1212
<select v-model="newsType" @change="changeType">
1313
<!-- Type options -->
1414
</select>
1515
</header>
1616

17-
<div v-for="(item, key) in list">
17+
<div v-for="(item, $index) in list" :key="$index">
1818
<!-- Hacker News item loop -->
1919
</div>
2020

@@ -23,10 +23,10 @@ The loading process is exactly same as the previous example, the key point is ho
2323

2424
In the template, we add a `select` element and listen it's `change` event, for `InfiniteLoading` component, we add an `identifier` property.
2525

26-
``` js
26+
``` js {10,11,19,31,32,33,34,35}
2727
import axios from 'axios';
2828

29-
const api = '//hn.algolia.com/api/v1/search_by_date?tags=story';
29+
const api = '//hn.algolia.com/api/v1/search_by_date';
3030

3131
export default {
3232
data() {
@@ -47,7 +47,7 @@ export default {
4747
}).then(({ data }) => {
4848
if (data.hits.length) {
4949
this.page += 1;
50-
this.list = this.list.concat(data.hits);
50+
this.list.push(...data.hits);
5151
$state.loaded();
5252
} else {
5353
$state.complete();

docs/zh/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ features:
1010
details: 目前支持向上和向下两种加载方式,可适应于更多的应用场景
1111
- title: 结果展示
1212
details: 可配置的加载结果展示,比如没有更多数据、没有任何数据等等
13-
previewLink: //jsfiddle.net/PeachScript/zqb73oLv/embedded/result/
13+
previewLink: //jsfiddle.net/PeachScript/a4Lxbf9w/embedded/result/
1414
---

docs/zh/guide/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
previewLink: //jsfiddle.net/PeachScript/zqb73oLv/embedded/result/
2+
previewLink: //jsfiddle.net/PeachScript/a4Lxbf9w/embedded/result/
33
---
44
# 指南
55

@@ -22,7 +22,7 @@ npm install vue-infinite-loading -S
2222
你可以借助 [unpkg](https://unpkg.com) 引入此插件:
2323

2424
``` html
25-
<script src="https://unpkg.com/vue-infinite-loading@2.3.5/dist/vue-infinite-loading.js"></script>
25+
<script src="https://unpkg.com/vue-infinite-loading@^2/dist/vue-infinite-loading.js"></script>
2626
```
2727

2828
#### 手动引入

docs/zh/guide/start-with-hn.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
previewLink: //jsfiddle.net/PeachScript/zqb73oLv/embedded/result/
2+
previewLink: //jsfiddle.net/PeachScript/a4Lxbf9w/embedded/result/
33
---
44

55
# 从 Hacker News 开始
@@ -8,12 +8,12 @@ previewLink: //jsfiddle.net/PeachScript/zqb73oLv/embedded/result/
88

99
首先,我们需要编写模板,内容大概如下(已省略不重要的代码):
1010

11-
``` html
11+
``` html {9}
1212
<header>
1313
<!-- Hacker News header -->
1414
</header>
1515

16-
<div v-for="(item, key) in list">
16+
<div v-for="(item, $index) in list" :key="$index">
1717
<!-- Hacker News item loop -->
1818
</div>
1919

@@ -45,7 +45,7 @@ export default {
4545
}).then(({ data }) => {
4646
if (data.hits.length) {
4747
this.page += 1;
48-
this.list = this.list.concat(data.hits);
48+
this.list.push(...data.hits);
4949
$state.loaded();
5050
} else {
5151
$state.complete();

docs/zh/guide/use-with-filter-or-tabs.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
---
2-
previewLink: //jsfiddle.net/PeachScript/bv9Lgj2k/embedded/result/
2+
previewLink: //jsfiddle.net/PeachScript/w197rfy0/embedded/result/
33
---
44

55
# 与过滤器和选项卡一起使用
66

7-
加载数据的过程与上一个案例完全一致,关键在于当我们改变过滤器选项或者切换选项卡的时候应该如何重设组件。每当 `identifier` 属性发生变化的时候,该组件就会自行重设,所以一切看起来都很容易,我们开始吧!
7+
加载数据的过程与上一个案例完全一致,关键在于当我们改变过滤器选项或者切换选项卡的时候应该如何重设组件。实际上,每当 `identifier` 属性发生变化的时候,该组件就会自行重设,所以一切看起来都很容易,我们开始吧!
88

9-
``` html
9+
``` html {12}
1010
<header>
1111
<!-- Hacker News header -->
1212
<select v-model="newsType" @change="changeType">
1313
<!-- Type options -->
1414
</select>
1515
</header>
1616

17-
<div v-for="(item, key) in list">
17+
<div v-for="(item, $index) in list" :key="$index">
1818
<!-- Hacker News item loop -->
1919
</div>
2020

@@ -23,10 +23,10 @@ previewLink: //jsfiddle.net/PeachScript/bv9Lgj2k/embedded/result/
2323

2424
在模板中,我们添加了一个 `select` 元素并监听它的 `change` 事件,我们还为 `InfiniteLoading` 组件添加了一个 `identifier` 属性。
2525

26-
``` js
26+
``` js {10,11,19,31,32,33,34,35}
2727
import axios from 'axios';
2828

29-
const api = '//hn.algolia.com/api/v1/search_by_date?tags=story';
29+
const api = '//hn.algolia.com/api/v1/search_by_date';
3030

3131
export default {
3232
data() {
@@ -47,7 +47,7 @@ export default {
4747
}).then(({ data }) => {
4848
if (data.hits.length) {
4949
this.page += 1;
50-
this.list = this.list.concat(data.hits);
50+
this.list.push(...data.hits);
5151
$state.loaded();
5252
} else {
5353
$state.complete();
@@ -65,4 +65,4 @@ export default {
6565

6666
在这段脚本中,我们为 `select``identifier` 属性设定了默认值,然后在 API 请求逻辑中添加了类型参数。我们还创建了一个 `changeType` 方法用于重设列表数据和加载组件,请注意,我们必须在清空列表之后再改变 `identifier` 属性,否则组件将可能无法在重设之后立即触发 `infinite` 事件。
6767

68-
就这样,你已经搞定啦
68+
恭喜,你已经搞定了

0 commit comments

Comments
 (0)