上一篇博文,我们搭建了一套基础的vuejs的环境,首先安装node.js,然后利用npm包管理器,安装vue-cli,设置淘宝镜像,初始化项目,安装依赖,运行。在这一篇,我们将认识vuejs项目里的各个目录结构。

基础项目目录

build	// 编译配置文件,一般不用管
|-build.js
|-check-versions.js
|-logo.png
|-utils.js
|-vue-loader.conf.js
|-webpack.base.conf.js
|-webpack.dev.conf.js
|-webpack.prod.conf.js
|-webpack.test.conf.js
config // 项目基本设置文件夹
|-dev.env.js // 开发配置文件
|-index.js // 配置主文件
|-prod.env.js // 编译配置文件
node_modules // 项目依赖包文件夹
src // 我们的项目的源码编写文件
|-assets // 初始项目资源目录,回头删掉
|-components // 组件目录
|-HelloWorld.vue // 测试组件
|-router // 路由配置文件夹
|-index.js // 路由配置文件
|-App.vue // APP入口文件
|-main.js // 主配置文件
static // 资源放置目录
index.html // 项目入口文件
package.json // 项目依赖包配置文件

上面就是vuejs项目初始化后的目录结构,我们一般情况下,只需要关注src和static资源目录就可以了,其它目录大多都是一些配置信息,不需要太费精力的关注。

配置SRC目录

src
|-api // 接口调用工具文件夹
|-index.js // 接口调用工具
|-components // 组件文件夹,目前为空
|-config // 项目配置文件夹
|-index.js // 项目配置文件
|-frame // 子路由文件夹
|-frame.vue // 默认子路由文件
|-pages // 我们的页面组件文件夹
|-Index.vue
|-Content.vue
|-router // 路由配置文件夹
|-index.js // 路由配置文件
|-style // scss 样式存放目录
|-base // 基础样式存放目录
|-scss // 页面样式文件夹
|-style.scss // 主样式文件
|-utils // 常用工具文件夹
|-App.vue // APP入口文件
|-main.js // 项目配置文件

将目录结构按上面的层级配置完成后,不要着急运行项目,这个时候由于删除了一些文件夹,项目是跑不起来的。

配置staitc资源目录

static
|-css // 放一些第三方的样式文件
|-font // 放字体图标文件
|-images // 放图片文件,如果是复杂项目,可以在这里面再分门别类
|-js // 放一些第三方的JS文件,如 jquery

对于一些不经常修改变动的css和js咱们统一放到static目录里,因为在src里面的文件,将来每次打包时都会对其进行打包,而文件特别多的情况下,打包会变的特别慢。

调整App.vue
上面我们进行的是一些目录结构的设置,现在我们对文件进行修改配置,使项目重新运行起来。首先将App.vue调整成如下代码:

<template>
<div id="app">
<router-view></router-view>
</div>
</template> <script>
export default {
name: 'app'
}
</script> <style lang="scss">
@import "./style/style"; <!--在这里我们直接导入主样式文件-->
</style>

注意上面使用了lang="scss",这是因为我们使用了 scss 文件预编译,所以我们要安装scss的npm包。

cnpm install sass-loader -D
cnpm install node-sass -D

调整Index.vue和Content.vue
src/pages/Index.vue

<template>
<div>index page</div>
</template>

src/pages/Content.vue

<template>
<div>content page</div>
</template>

暂时先写如上代码,后面会对上面代码进行讲解和丰富。

调整 router 路由文件
打开src/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: '/',
name: 'HelloWorld',
component: HelloWorld
}
]
})

调整为如下代码:

import Vue from 'vue'
import Router from 'vue-router'
import Index from '@/pages/Index'
import Content from '@/pages/Content' Vue.use(Router) export default new Router({
  routes: [
    {
      path: '/',
      component: Index
    },
    {
      path: '/Content/:id',
      component: Content
    }
  ]
})

上面的/就是默认的意思,这里默认显示我们的Index.vue,而大家可能会对Content/:id有疑问,因为咱们做的是一个列表,然后点击列表中具体的某一条,就进入到了内容页面。而:id就是vuejs路由的动态路由配置。我们用id来区分显示不同的内容。

上些工作做完, 我们的项目就基本配置好了,这个时候来启动我们的项目

cnpm run dev

当出现上图,则表示启动成功,如果有ERROR则表示失败,请仔细检查上面的各个文件的内容是否书写有错。启动成功我们打开浏览器,输入http://localhost:8080,如果看到以下界面,则说明和我的项目是一样的。


本篇文章大部分内容摘抄至FungLeo博客,忠心感谢FungLeo,是你们无私的奉献,才让我们有了学习的参考,以下是地址:
http://blog.csdn.net/FungLeo/article/details/77585205

三、VueJs 填坑日记之项目文件认识的更多相关文章

  1. 六、VueJs 填坑日记之初识*.Vue文件

    上一篇博文中,我们将接口的地址通过webpack代理到了本地,解决了跨域的问题.在之前的文章中,我们一直对项目进行配置,并没有真正的切入正题,可能很多人还不明白我们要做什么?那么今天,我们就要开写代码 ...

  2. 七、VueJs 填坑日记之渲染一个列表

    在上一篇博文中,我们对vue组件有了一个简单的认识和大概的理解.在之前认识项目结构的时候,我们在/src目录中创建了一个components的文件夹,而今天就要用到了,这个文件夹的作用就是放置我们的自 ...

  3. 一、VueJs 填坑日记之基础概念知识解释

    概述在最开始听说vuejs这个词是在2016年,当时天真的认为自己是个后端开发工程师不需要学习太多的前端知识,不过紧接着在2017年在公司就用到了vuejs.对于初学者(尤其是干后端的初学者)来说,刚 ...

  4. 二、VueJs 填坑日记之基础项目构建

    在上一篇文章中,大致介绍了一下本系列博文以及学习vuejs我们需要了解的一些概念,希望大家认真阅读,所谓知己知彼,百战百胜,学习也一样,工欲善其事,必先利其器,要想学好vuejs,那前提的概念一定要熟 ...

  5. 八、VueJs 填坑日记之参数传递及内容页面的开发

    我们在上一篇博文中,渲染出来了一个列表,并在列表中使用了router-link标签,标签内的:to就是链接地址,昨天咱们是<router-link :to="'/content/' + ...

  6. 十、VueJs 填坑日记之在项目中使用Amaze UI

    上一篇博文,我们把jQuery集成到了项目中,今天我们来集成Amaze ui(妹子UI).先来介绍一下妹子UI.Amaze UI 含近 20 个 CSS 组件.20 余 JS 组件,更有多个包含不同主 ...

  7. 十一、VueJs 填坑日记之使用Amaze ui调整列表和内容页面

    上一篇博文我们整合了Amaze ui,并且调整了一个头部header和底部footer文件,其实做起来也很简单,只要按照步骤来做,完全没有问题.今天我们来重新调整一下列表页面和内容页面,使我们做的后台 ...

  8. 十二、VueJs 填坑日记之项目打包发布

    通过上一篇博文的学习,我们其实已经完成了我们设想的项目的开发.但是,我们做好的这套东西,是基于 nodejs 开发的.而我们最终希望,我们开发的项目,生成好一堆文件,然后随便通过任何一个 http 服 ...

  9. 四、VueJs 填坑日记之搭建Axios接口请求工具

    上一章,我们认识了项目的目录结构,以及对项目的目录结构做了一些调整,已经能把项目重新跑起来了.今天我们来搭建api接口调用工具Axios.Vue本身是不支持ajax调用的,如果你需要这些功能就需要安装 ...

随机推荐

  1. Linux用户和文件权限管理

    本文为原创文章,转载请标明出处 目录 用户管理 系统用户文件 添加用户 useradd 设置用户密码 passwd 删除用户 userdel 用户管理 usermod 用户组管理 系统用户组文件 添加 ...

  2. Ubuntu下的终端多标签切换快捷键

    ubuntu下由于常在终端下工作,也同样需要在一个终端窗口下开启多个标签方便日常开发工作(vim党,尽量避免使用鼠标) 方法一: alt+1 alt+2 alt+3 方法二: ctrl + pageU ...

  3. windows下利用nginx 做IIS负载均衡

    如果网站流量变大,就想加服务器分担压力,当然就要用到负载均衡,在windows 2003有自带的网络负载均衡,但配置还是挺麻烦的虽然有轮训和iphash的效果,但效果不算好. nginx小巧,下载不到 ...

  4. WPF ListBox数据绑定

    本文来源 http://wshoufeng1989.blog.163.com/blog/static/202047033201282911633670/  风随影动的博客 使用数据库AllData , ...

  5. exp3.1实现顺序栈的各种操作

    #include<iostream>using namespace std;#include<malloc.h>typedef char Elem;typedef struct ...

  6. win10 uwp 读取保存WriteableBitmap 、BitmapImage

    我们在UWP,经常使用的图片,数据结构就是 BitmapImage 和 WriteableBitmap.关于 BitmapImage 和 WriteableBitmap 区别,我就不在这里说.主要说的 ...

  7. nodejs里的module.exports和exports

    引 在node.js中我们可以使用module.exports和exports导出模块,设置导出函数.数组.变量等等 为什么可以用这两个模块? 或者直接问,node.js的模块功能是怎么实现的. 这样 ...

  8. Linux入门(7)——Ubuntu16.04安装wps并解决系统缺失字体问题

    进入WPS官网下载deb包: http://linux.wps.cn/ 安装,打开终端: cd 下载 ~a21_amd64.deb 解决打开WPS时出现的系统缺失字体问题: 下载 https://pa ...

  9. java中的static关键字详解

    static对于我们这些初学者在编写代码和阅读代码是一个难以理解的关键字,也是大量公司面试题最喜欢考的之一.下面我就来就先讲述一下static关键字的用法和我们初学者容易误解的地方. static关键 ...

  10. python函数说明内容格式错误

    def levlTwo(levloneList,levlOneNum): """ 入参levloneList 一级城市列表 入参levlOneNum 用户选择的城市序号 ...