1.0.1 • Published 4 years ago

vue-multi-view-list v1.0.1

Weekly downloads
-
License
-
Repository
github
Last release
4 years ago

npm-list-view

Dependancy

npm install vue-multi-view-list

Dependancy

  • Font-Awesome 5

UI

There are 2 view mode: row, card.

Usage

// tour-page.vue

<template>
  <List
    :config="listConfig"
    :data="listData"
    default-view="card"
    switch-view="true"
    @on-click="handleClick"
    @on-edit="handleEdit"
    @on-delete="handleDelete" />
</template>

<script>
import List from 'vue-multi-view-list'
</script>

List Props

PropertyTypeDescriptionDefaultR/O
configObjectUser custom configRequired
dataArraysource dataRequired
editableBooleanshow edit icontrue
deletableBooleanshow delete icontrue
switch-viewBooleanshow view switchertrue
default-viewStringdefine initial view mode'list'

List Item Events

Event will return item's source data and it's index from source data array.

Event NameDescriptionReturn Value
on-clickclick list itemObject, Number
on-editclick edit iconObject, Number
on-deleteclick delete iconObject, Number

Config

config: {
	title: {
    key: 'keyname', // refer to item data's key
    align: 'left' // text-align: `left`, `center`, `right`. default: left
  }, 
	image: 'keyname', // refer to item data's key
	content: {
    // if you set render function, ignore other attribute.
    render: (params) => { // `params` is item data
      // do something
      return `your result ${params.custom.attribute}` // need to be string or es6 template string
    }
  },
	footer: [ // only footer use array. Name is the title for each value.
    { name: 'Area', key: 'area' },
    { name: 'Category',
      render: (params) => params.category.join(', ')
    }
  ]
}