vue项目src目录详解

src目录结构

assets: 放置静态资源,包括公共的 css 文件、 js 文件、iconfont 字体文件、img 图片文件 以及其他资源类文件。之所以强调是公共的 css 文件,是因为要在组件的 css 标签里加入 ‘scoped‘ 标记,将其作用范围限制在此组件以及调用它的父级组件中,避免污染全局样式;
components: 放置通用模块组件。项目里总会有一些复用的组件,例如弹出框、发送手机验证码、图片上传等,将它们作为通用组件,避免重复工作;
http: 放置与后台 api 相关的文件。这里面有 axios 库的实例配置文件、使用配置的 axios 实例接入 api 获取数据的函数的集合的文件;
mixins: 放置混合选项的文件。具体来说,相当于是公用函数的集合,在组件中引用时,可以作用于组件而不必书写重复的方法;
pages: 放置主要页面的组件。例如登录页、用户信息页等。通常是这里的组件本身写入一些结构,再引入通用模块组件,形成完整的页面;
router: 放置路由设置文件,指定路由对应的组件;
store: 放置 vuex 需要的状态关联文件,设置公共的 state、mutations 等;
App.vue: 入口组件,pages 里的组件会被插入此组件中,此组件再插入 index.html 文件里,形成单页面应用;
main.js: 入口 js 文件,影响全局,作用是引入全局使用的库、公共的样式和方法、设置路由等。

一、main.js

####项目的入口文件

import Vue from 'vue'
//自动寻找名字为App的文件,如app.vue app.js...
import App from './App'
/* 引入router变量*/
import router from './router'

Vue.config.productionTip = false

new Vue({
/* 挂载在id=app的div元素上 */
  el: '#app',
 /* 使用router变量 router:router*/
  router,
/* es6写法,为App:App 键值一样可以省写为一个。名字为App的局部组件*/
  components: { App },
  /* 将App局部组件显示在页面上*/
  template: '<App/>'
})

二、app.vue

####文件以vue后缀结尾,为单文件组件,其中为vue组件

<template>
 /* 模板标签*/
  <div id="app">
    <img src="./assets/logo.png">
    /* 显示的是当前路由地址对应的内容 即router目录下index.js引用的HelloWorld组件的内容*/ 
    <router-view/>
  </div>
</template>

<script>
 /* 组件的逻辑*/
export default {
  name: 'App'
}
</script>

<style>
 /* 组件的css样式*/
#app {
  font-family: 'Avenir', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>

三、路由

####路由就是根据网址的不同,返回不同的内容给用户
如:url为 http://localhost:8080/#/list 返回列表页面
####router目录下index.js

import Vue from 'vue'
import Router from 'vue-router'
import HelloWorld from '@/components/HelloWorld'

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/',
      /* 当访问根目录时,展示HelloWorld组件*/
      name: 'HelloWorld',
      component: HelloWorld
    }
  ]
})
Vue.js 是一个基于 MVVM 模式的前端框架,它提供了一些基础的目录结构,方便我们进行项目开发。下面是一个常见的 Vue 项目目录结构: ``` ├── build // 构建相关 ├── public // 静态资源 │ ├── favicon.ico // 网站图标 │ └── index.html // 入口 HTML 文件 ├── src // 源代码 │ ├── assets // 资源文件(图片、样式等) │ ├── components // 组件 │ ├── router // 路由 │ ├── store // 状态管理 │ ├── views // 页面视图 │ ├── App.vue // Vue 根组件 │ └── main.js // 入口 JS 文件 ├── static // 静态资源 ├── .babelrc // Babel 配置文件 ├── .editorconfig // 编辑器配置 ├── .eslintignore // ESLint 忽略配置 ├── .eslintrc.js // ESLint 配置文件 ├── .gitignore // Git 忽略配置 ├── package.json // 项目依赖及配置 └── README.md // 项目说明 ``` 上述目录结构主要包含以下几个部分: - build:存放构建相关的配置文件,如 webpack 的配置文件等。 - public:存放静态资源,如网站图标、入口 HTML 文件等。 - src:存放源代码,包括资源文件、组件、路由、状态管理、页面视图、入口 JS 文件等。 - static:存放静态资源,如图片、字体等。 - .babelrc:Babel 配置文件。 - .editorconfig:定义代码风格的配置文件,会被大多数编辑器识别。 - .eslintignore:ESLint 忽略配置。 - .eslintrc.js:ESLint 配置文件。 - .gitignore:Git 忽略配置。 - package.json:项目依赖及配置。 - README.md:项目说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值