chore(infinite-scroll): move infinite-scroll-content to separate directory

This commit is contained in:
Adam Bradley
2017-11-28 20:55:22 -06:00
parent 5ab026bfb7
commit d61a48aab8
5 changed files with 122 additions and 67 deletions

View File

@ -1053,7 +1053,7 @@ declare global {
import {
InfiniteScrollContent as IonInfiniteScrollContent
} from './components/infinite-scroll/infinite-scroll-content';
} from './components/infinite-scroll-content/infinite-scroll-content';
declare global {
interface HTMLIonInfiniteScrollContentElement extends IonInfiniteScrollContent, HTMLElement {

View File

@ -1,9 +1,7 @@
import { Component, Prop } from '@stencil/core';
import { Config } from '../../index';
/**
* @hidden
*/
@Component({
tag: 'ion-infinite-scroll-content'
})

View File

@ -0,0 +1,35 @@
# ion-infinite-scroll-content
<!-- Auto Generated Below -->
## Properties
#### loadingSpinner
string
#### loadingText
string
## Attributes
#### loadingSpinner
string
#### loadingText
string
----------------------------------------------
*Built by [StencilJS](https://stenciljs.com/)*

View File

@ -1,4 +1,4 @@
# ion-infinite-scroll-content
# ion-infinite-scroll
The Infinite Scroll allows you to perform an action when the user
scrolls a specified distance from the bottom or top of the page.
@ -11,13 +11,13 @@ on the infinite scroll instance.
```html
<ion-content>
<ion-list>
<ion-list>
<ion-itemngFor="let i of items">{% raw %}{{i}}{% endraw %}</ion-item>
</ion-list>
</ion-list>
<ion-infinite-scroll (ionInfinite)="doInfinite($event)">
<ion-infinite-scroll (ionInfinite)="doInfinite($event)">
<ion-infinite-scroll-content></ion-infinite-scroll-content>
</ion-infinite-scroll>
</ion-infinite-scroll>
</ion-content>
```
@ -25,15 +25,15 @@ on the infinite scroll instance.
```ts
@Component({...})
export class NewsFeedPage {
items = [];
items = [];
constructor() {
constructor() {
for (let i = 0; i < 30; i++) {
this.items.push( this.items.length );
}
}
}
doInfinite(infiniteScroll) {
doInfinite(infiniteScroll) {
console.log('Begin async operation');
setTimeout(() => {
@ -44,11 +44,12 @@ export class NewsFeedPage {
console.log('Async operation has ended');
infiniteScroll.complete();
}, 500);
}
}
}
```
## `waitFor` method of InfiniteScroll
In case if your async operation returns promise you can utilize
@ -57,13 +58,13 @@ In case if your async operation returns promise you can utilize
```html
<ion-content>
<ion-list>
<ion-list>
<ion-itemngFor="let item of items">{{item}}</ion-item>
</ion-list>
</ion-list>
<ion-infinite-scroll (ionInfinite)="$event.waitFor(doInfinite())">
<ion-infinite-scroll (ionInfinite)="$event.waitFor(doInfinite())">
<ion-infinite-scroll-content></ion-infinite-scroll-content>
</ion-infinite-scroll>
</ion-infinite-scroll>
</ion-content>
```
@ -71,15 +72,15 @@ In case if your async operation returns promise you can utilize
```ts
@Component({...})
export class NewsFeedPage {
items = [];
items = [];
constructor() {
constructor() {
for (var i = 0; i < 30; i++) {
this.items.push( this.items.length );
}
}
}
doInfinite(): Promise<any> {
doInfinite(): Promise<any> {
console.log('Begin async operation');
return new Promise((resolve) => {
@ -92,10 +93,11 @@ export class NewsFeedPage {
resolve();
}, 500);
})
}
}
}
```
## Infinite Scroll Content
By default, Ionic uses the infinite scroll spinner that looks
@ -103,8 +105,8 @@ best for the platform the user is on. However, you can change the
default spinner or add text by adding properties to the
`ion-infinite-scroll-content` component.
```html
<ion-content>
```html
<ion-content>
<ion-infinite-scroll (ionInfinite)="doInfinite($event)">
<ion-infinite-scroll-content
@ -113,8 +115,8 @@ default spinner or add text by adding properties to the
</ion-infinite-scroll-content>
</ion-infinite-scroll>
</ion-content>
```
</ion-content>
```
## Further Customizing Infinite Scroll Content
@ -133,28 +135,48 @@ You could replace our default content with custom SVG or CSS animations.
## Properties
#### loadingSpinner
#### enabled
boolean
#### position
string
#### loadingText
#### threshold
string
## Attributes
#### loadingSpinner
#### enabled
boolean
#### position
string
#### loadingText
#### threshold
string
## Events
#### ionInfinite
## Methods
#### complete()
----------------------------------------------

View File

@ -49,7 +49,7 @@ export {
export { Grid } from './components/grid/grid';
export { Header } from './components/header/header';
export { InfiniteScroll } from './components/infinite-scroll/infinite-scroll';
export { InfiniteScrollContent } from './components/infinite-scroll/infinite-scroll-content';
export { InfiniteScrollContent } from './components/infinite-scroll-content/infinite-scroll-content';
export { Input } from './components/input/input';
export { Item } from './components/item/item';
export { ItemDivider } from './components/item-divider/item-divider';