一.Vue项目环境搭建 “node ~~~python:node是用c++ 编写来运行js代码的npm(cnpm) ~~~ pip:npm是一个终端应用商城,可以换国内源cnpmvue ~~~ django:vue是用来搭建vue前端项目的 1 ) 安装node官网下载安装包
一.Vue项目环境搭建
“ node~~~python:node是用c++编写来运行js代码的 npm(cnpm)~~~pip:npm是一个终端应用商城,可以换国内源cnpm vue~~~django:vue是用来搭建vue前端项目的 1) 安装node 官网下载安装包,傻瓜式安装:https://nodejs.org/zh-cn/ 2) 换源安装cnpm >: npm install -g cnpm --registry=https://registry.npm.taobao.org 3) 安装vue项目脚手架 >: cnpm install -g @vue/cli 注:2或3终端安装失败时,可以清空 npm缓存 再重复执行失败的步骤 npm cache clean --force ”
二.Vue项目创建
1) 进入存放项目的目录 >: cd *** 2) 创建项目 >: vue create 项目名 3) 项目初始化
三.pycharm配置并启动vue项目
1) 用pycharm打开vue项目
2) 添加配置npm启动
四.vue项目目录结构分析
├── v-proj | ├── node_modules // 当前项目所有依赖,一般不可以移植给其他电脑环境 | ├── public | | ├── favicon.ico // 标签图标 | | └── index.html // 当前项目唯一的页面 | ├── src | | ├── assets // 静态资源img、css、js | | ├── components // 小组件 | | ├── views // 页面组件 | | ├── App.vue // 根组件 | | ├── main.js // 全局脚本文件(项目的入口) | | ├── router.js // 路由脚本文件(配置路由 url链接 与 页面组件的映射关系) | | └── store.js // 仓库脚本文件(vuex插件的配置文件,数据仓库) | ├── README.md └ └── **配置文件
五.Vue组件(.Vue文件)
# 1) template:有且只有一个根标签 # 2) script:必须将组件对象导出 export default {} # 3) style: style标签明确scoped属性,代表该样式只在组件内部起作用(样式的组件化)
<template> <div class="test"> </div> </template> <script> export default { name: "Test" } </script> <style scoped> </style>
六.全局脚本文件main.js(项目入口)
import Vue from ‘vue‘ //加载vue环境 import App from ‘./App.vue‘ //加载根组件 import router from ‘./router‘ //加载路由环境 import store from ‘./store‘ //加载数据仓库环境 Vue.config.productionTip = false new Vue({ router, store, render: h => h(App) }).$mount(‘#app‘)
七.vue项目启动生命周期与页面组件的运用(重点)
请求过程
1)加载main.js启动项目 import Vue from ‘vue‘ 为项目加载vue环境 import App from ‘./App.vue‘ 加载根组件用于渲染挂载点 import router from ‘./router‘ 加载路由脚本文件,进入路由相关配置 2)加载router.js文件,为项目提供路由服务,并加载已配置的路由(链接与页面组件的映射关系) 注:不管当前渲染的是什么路由,页面渲染的一定是根组件,链接匹配到的页面只是替换根组件中的 <router-view/> 3)如果请求连接改变(路由改变),就会匹配新链接对应的页面组件,新页面组件会替换渲染router-view标签,替换掉之前的页面标签(就是完成了页面跳转)
八.全局样式文件配置
assets/css/global.css
html, body, h1, h2, ul, p { margin: 0; padding: 0; } ul { list-style: none; } a { color: black; text-decoration: none; }
main.js中新增
// 配置全局样式
import ‘@/assets/css/global.css‘
九.组件生命周期钩子
# 1)一个组件从创建到销毁的整个过程,就称之为组件的生命周期 # 2)在组件创建到销毁的过程中,会出现众多关键的时间节点,如 组件要创建了、组件创建完毕了、
组件数据渲染完毕了、组件要被销毁了、组件销毁完毕了 等等时间节点,每一个时间节点,vue都为其提供了一个回调函数(在该组件到达该时间节点时,
就会触发对应的回调函数,在函数中就可以完成该节点需要完成的业务逻辑) # 3)生命周期钩子函数就是 vue实例 成员
任何一个组件:在vue组件的script的export default导出字典中直接写钩子函数
export default { // ... beforeCreate() { console.log(‘组件创建了,但数据和方法还未提供‘); // console.log(this.$data); // console.log(this.$options.methods); console.log(this.title); console.log(this.alterTitle); }, // 该钩子需要掌握,一般该组件请求后台的数据,都是在该钩子中完成 // 1)请求来的数据可以给页面变量进行赋值 // 2)该节点还只停留在虚拟DOM范畴,如果数据还需要做二次修改再渲染到页面, // 可以在beforeMount、mounted钩子中添加逻辑处理 created() { console.log(‘组件创建了,数据和方法已提供‘); // console.log(this.$data); // console.log(this.$options.methods); console.log(this.title); console.log(this.alterTitle); console.log(this.$options.name); }, destroyed() { console.log(‘组件销毁完毕‘) } }