Package Exports
- vue-infinite-loading
- vue-infinite-loading/src/index
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (vue-infinite-loading) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme

vue-infinite-loading
An infinite loading/scroll plugin for Vue.js
Demos
Picture demo

Live demo
See http://peachscript.github.io/vue-infinite-loading/
Install
npm install vue-infinite-loading --saveImport
ES6
import InfiniteLoading from 'vue-infinite-loading';
export default {
components: {
InfiniteLoading
}
}CommonJS
const InfiniteLoading = require('vue-infinite-loading');
export default {
components: {
InfiniteLoading
}
}Others
The InfiniteLoading component will register with the global Vue automatically, so you just need import it into your APP like this way:
<script src="/path/to/vue-infinite-loading/dist/vue-infinite-loading.js"></script>Usage
Template:
<body>
<ul>
<li v-for="item in list" v-text="item"></li>
</ul>
<infinite-loading :distance="distance" :on-infinite="onInfinite" v-if="isLoadedAllData"></infinite-loading>
</body>Props
on-infinite
The callback use for scroll to specific distance from the bottom of scroll parent.
Most of the time, you should broadcast $InfiniteLoading:loaded event in this callback after loaded data completely, if not, the loading animation won't stop and the InfiniteLoading component no longer call this function.
- type Function
- required falsedistance
The critical value for scroll. If the distance from the bottom of scroll parent less than this property, the on-infinite callback will be called .
- type Number
- required false
- default 100
- unit pixelv-if
As you know, this property is an official directive of Vue.js for render element conditionally, so we can render or destroy the InfiniteLoading component by it.
- type Boolean
- required falseEvents
$InfiniteLoading:loaded
When the InfiniteLoading component received this event, it will hide the loading animation and continue to wait the next trigger.
$InfiniteLoading:noResults
When the InfiniteLoading component received this event, it will display the no results tips.
$InfiniteLoading:noMore
When the InfiniteLoading component received this event, it will display the no more data tips.
$InfiniteLoading:reset
When the InfiniteLoading component received this event, it will reset itself, and the on-infinite function will be called. Maybe you need it when you use the component in some UI component like filter tabs.
Slots
no-results
This content will display when the InfiniteLoading component received $InfiniteLoading:noResults event.
- type String
- default No results :(no-more
This content will display when the InfiniteLoading component received $InfiniteLoading:noMore event.
- type String
- default No more data :)Development Setup
# install dependencies
npm install
# run dev-server
npm run dev
# test
npm test
# lint
npm lintLicence
The MIT License (MIT)
Copyright (c) 2016 PeachScript
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.