上一篇博文,我们搭建了一套基础的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

转载于:https://www.cnblogs.com/xinhudong/p/7843532.html

三、VueJs 填坑日记之项目文件认识相关推荐

  1. Vue入门到上手(10)—— VueJs 填坑日记之在项目中使用Amaze UI

    Vue入门到上手(10)-- VueJs 填坑日记之在项目中使用Amaze UI 上一篇博文,我们把jQuery集成到了项目中,今天我们来集成Amaze ui(妹子UI).先来介绍一下妹子UI.Ama ...

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

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

  3. [单片机][at32][填坑日记] [USB卡包] usb快速发包导致卡包

    文章目录 一.问题现象 1. 发送频率过快,导致pc或mcu未能及时应答每一包,造成缓存区遗留上一次数据. 2. usb频发拔插枚举,导致pc/mcu数据丢失, ①mcu丢失数据,每次发送都只能发送上 ...

  4. [单片机][at32][填坑日记] [USB卡包] usb上电过程中快速发包导致卡包(终章)

    文章目录 一.原因造成如下: 1. 串口外设优先级大于USB中断(USBOTG_IRQn),导致串口数据打断USB,致使PC或MCU丢包. 2. 当PC请求usb设备描述符字符串时,USB的其他通道不 ...

  5. WindowsPhoneWindows8.1Windows8Unity3d 填坑日记

    最近的游戏开发大体上接近尾声,总结了不少关于Unity3d面向Windows几大平台开发时遇到的各种坑以及如何填坑的经验.总的来说,Windows8.1 Windows8/RT以及WindowsPho ...

  6. 20150726 填坑日记

    三中内填坑: 1. 组合数递推什么的 C(m,n)=C(m,n-1)+C(m-1,n-1).填了个大坑,以前没认真听课QAQ 2. 裸题过河卒 3. 缺角正方形摆放车统计,分上下部分,枚举上部分放几个 ...

  7. android多语言插件,Android 7.0多语言适配,填坑日记(附多语言插件)

    背景 最近项目在适配7.0系统的时候发现一些问题,其中也有多语言适配的问题,就拿出来说说,记记笔记,填填坑. 问题1 因为刚接手项目不久,发现一些奇奇怪怪的bug总是让人头疼,最近发现了在华为荣耀7. ...

  8. Hadoop Dynamometer工具详细教程,填坑日记

    Dynamometer工具使用步骤 Dynamometer 介绍 准备"材料" 原理 注意事项 流程 1.fsimage 2.hadoop binary 3.Configurati ...

  9. 【odoo12填坑日记】field.selection引号使用规范

    odoo12(不知道其他版本是否同样问题) 在fields.selection中的键值对中,列表中的元组中值必须是使用双引号,而不能是单引号. 可以看到,如果使用的单引号,在生成的html中 item ...

  10. 【填坑日记】list集合的remove方法移除不了?!

    背景 list集合大家再工作学习中是不是很常用呢?既然用了list就得删除吧,这时你心想删除不就是remove吗?这谁不会,而且编辑器还能给只能提示呢,我只要r输进去无脑回车就完事了. 一顿操作发现, ...

最新文章

  1. redis系列:基于redis的分布式锁
  2. 对docker容器的增加或减少进行报警
  3. 矢量合成和分解的法则_力的合成与分解专题解析,寒假复习!
  4. Linux下的MySQL安装及卸载
  5. 未结束的字符文字_PAT B1042:字符统计
  6. Python2.7.3 Tkinter Entry(文本框) 说明
  7. CPU 漏洞补丁对内核性能影响:4.15 比 4.11 快 7-9%
  8. C语言之pthread_cond_wait()和pthread_cond_timedwait()区别(十五)
  9. AIX 系统默认ftp
  10. mac pycharm汉化(附带汉化包)
  11. 软考——论文写作基本介绍
  12. Linux中history命令增加时间显示
  13. 实验五 CA的安装和使用
  14. 创建订单 / 下单接口参数说明
  15. 玩客云实名认证安全吗_玩客云骗局揭秘(真的可以月入万元?)
  16. 小德,真的没想到,去年的千年德三子到现如今的现象级
  17. win10重置计算机网络设置,Win10网络重置后无法连接网络怎么办
  18. 微信java tools_微信开发工具包(weixin-java-tools)
  19. 硬盘活动分区(将磁盘分区标为活动或取消活动的方法)(转)
  20. 一位原码乘法器 一位补码乘法器原理

热门文章

  1. 很好的c++和Python混合编程文章
  2. NSArray的排序问题
  3. Java中多态的实例
  4. 该来的还是要来,数据挖掘
  5. C++标准程序库读书笔记-第二章新的语言特性
  6. jsp文件创建后自动设置其pageEncoding的属性值为UTF-8
  7. Js对接口数据归类整理
  8. Less/Sass 定制私人常用方法库
  9. java基础 小知识点
  10. python封装为php库,从PHP运行Python脚本作为库