Vue入门笔记(一)——目录结构

本文中用到的项目来自:https://github.com/keepfool/vue-tutorials
第一次接触vue,记录下自己学习成果

目录结构

Vue入门笔记(一)——目录结构_第1张图片

项目的效果

Vue入门笔记(一)——目录结构_第2张图片

2. 各个目录内容

1)main.js 项目的入口文件,创建了根vue实例,并引入根组件app.vue。每个 Vue 应用都是通过用 Vue 函数创建一个 Vue 实例开始的(一个 Vue 应用由一个通过 new Vue 创建的根 Vue 实例,以及可选的嵌套的、可复用的组件树组成)
Vue入门笔记(一)——目录结构_第3张图片
main.js 和 index.js 在vue项目中是关联在一起的
2)App.vue 根组件
Vue入门笔记(一)——目录结构_第4张图片
本图中的1和2 分别对应的是效果图中的1和2
在根组件中使用了SimpleGrid组件,使用组件时将驼峰式的名称对应成-连接的名称,这是一种使用组件的格式
3)index.html 主页,项目入口
文件通过引入了根组件
Vue入门笔记(一)——目录结构_第5张图片
4)SimpleGrid.vue 定义了一个组件 这部分就是效果图中的2部分


<template>
	<table>
		<thead>
			<tr>
				<th v-for="col in columns" v-on:click="sortBy(col)">
					
					
					{{ col | capitalize}}
					<span class="arrow" v-show="sortKey === col" v-bind:class="sortOrders[sortKey] > 0 ? 'asc' : 'dsc' ">span>
				th>
			tr>
		thead>
		<tbody>
			
			
			<tr v-for="entry in data | filterBy filterKey | orderBy sortKey sortOrders[sortKey]">
				<td v-for="col in columns">
					{{entry[col]}}
				td>
			tr>
		tbody>
	table>
template>

<script>
// import导入 export导出 
// 在一个文件或模块中,export、import可以有多个,export default仅有一个
// 通过export方式导出,在导入时要加{ },export default则不需要
// export 和 export default 可以实现相同的功能,只是使用的格式稍有不同
	export default {
		// property 名称和类型的格式,为组件设置属性
		props: {
			data: Array,
			columns: Array,
			sortOrder: Object,
			filterKey: String
		},
		methods: {
			sortBy: function(col) {
				this.sortKey = col;
				this.sortOrders[col] *= -1
			}
		},
		// 组件的数据定义格式
		data() {
			var sortOrders = {}
			this.columns.forEach(function(col) {
				sortOrders[col] = 1
			})
			return {
				sortKey: '',
				sortOrders: sortOrders
			}
		}
	}
script>

你可能感兴趣的:(vue,前端)