vue 3
复习
"""
v-if | v-show "tag == 0"
v-if | v-else-if | v-else
v-for="obj in objs"
<div :abc="obj">{{ obj }}</div>
computed:监听绑定函数中的所有变量,返回值给绑定的变量
watch:监听绑定的变量
let localTag = { # => <local-tag>
template: `只能有一个根标签`,
data: funtion() {
return {
}
},
methods: {
},...
}
new Vue({
components: {
localTag: localTag
}
})
Vue.component('globalTag', {})
父传子
<子 :abc="msg"></子>
父 {
data: {
msg: '信息'
}
}
子 {
props: ['abc']
}
子传父
<子 @ooo="fn"></子>
父 {
methods: {
fn: function(a, b) {
}
}
}
子 {
data: fn {
a: 'aaa',
b: 'bbb'
},
methods: {
// 子组件中触发 xyz
xyz: function() {
// 触发ooo自定义事件
this.$emit('ooo', a, b)
}
}
}
"""
Vue项目需要自建服务器:node
"""
1.用C++语言编写,用来运行JavaScript语言
2.node可以为前端项目提供server (包含了socket)
"""
npm:包管理器 - 为node拓展功能的
# 换国内源,加速下载
# 管理员命令行:npm install -g cnpm --registry=https://registry.npm.taobao.org
# MacOS: sudo npm install -g cnpm --registry=https://registry.npm.taobao.org
# 所有npm的指令都可以换成cnpm
# npm install vuex => cnpm install vuex
vue cli环境:脚手架 - 命令行快速创建项目
"""
cnpm install -g @vue/cli
如果报错:npm cache clean --force
"""
创建Vue项目
"""起步
1.cd 到目标目录
2.创建项目:vue create 目录名
"""
""" 创建项目的过程
提示下载原:选择淘宝镜像
具体配置:上下键切换,空格键选择,回车键进入下一步
1.第二个选项进入自定义配置
2.Babel jsES6语法转换ES5,Router路由 Vuex:组件数据交互,vue就一个页面,但有很多组件,组件之间有通信,它把一个页面里面丢了一个单例对象(在任何地方拿到它都是唯一的对象),对象可以点出来属性,那这个对象保存的值,在任何组件拿到的都是这个值,在一个组件改了值,在其他组件中去拿,就是你在那一个组件改的值,实现了跨组件信息交互 Formatter格式化代码,
3...有提示选择大写,没提示默认第一个即可
"""
启动项目
""" 终端启动
1.进入项目:cd到项目目录
2.启动项目:npm run serve
"""
""" pycharm配置
1.按照vue.js插件,重启
2.配置项目的npm启动项
"""
项目目录
"""
node_modules:依赖
public:共有资源
ico:页面标签的logo
html:单页面 - 整个项目的唯一页面
src:代码主体
...:项目、插件等相关配置
"""
""" src
assets:静态资源
components:小组件
views:视图组件
App.vue:根组件
main.js:主脚本文件
router.js:路由脚本文件 vue-router
store.js:仓库脚本文件 vuex
"""
组件
<template>
<!-- 只能有一个根标签 -->
</template>
<script>
export default {
name: "Main",
data: function() {
return {
}
},
...
}
</script>
<style scoped>
/* scoped */
</style>
在根组件中渲染页面组件
<!-- Main.vue 主页组件 -->
<template>
<div class="main">
<h1>{{ title }}</h1>
</div>
</template>
<script>
export default {
name: "Main",
data: function () {
return {
title: '主页'
}
}
}
</script>
<style scoped>
.main {
height: 100vh;
background-color: orange;
}
h1 {
margin: 0;
color: red;
}
</style>
<!-- App.vue根组件 -->
<template>
<div id="app">
<!-- 3.使用 -->
<Main></Main>
</div>
</template>
<script>
// 1.导入
import Main from '@/views/Main'
export default {
// 2.注册
components: {
Main: Main
}
}
</script>
<style>
html, body {
margin: 0;
}
</style>
路由:router.js
在根组件中设计转跳页面的导航栏
创建三个页面组件
配置路由
前后台交互
vue 3的更多相关文章
- Vue.js 和 MVVM 小细节
MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式,其核心是提供对View 和 ViewModel 的双向数据绑定,这使得ViewModel 的状态改变可以自 ...
- wepack+sass+vue 入门教程(三)
十一.安装sass文件转换为css需要的相关依赖包 npm install --save-dev sass-loader style-loader css-loader loader的作用是辅助web ...
- wepack+sass+vue 入门教程(二)
六.新建webpack配置文件 webpack.config.js 文件整体框架内容如下,后续会详细说明每个配置项的配置 webpack.config.js直接放在项目demo目录下 module.e ...
- wepack+sass+vue 入门教程(一)
一.安装node.js node.js是基础,必须先安装.而且最新版的node.js,已经集成了npm. 下载地址 node安装,一路按默认即可. 二.全局安装webpack npm install ...
- Vue + Webpack + Vue-loader 系列教程(2)相关配置篇
原文地址:https://lvyongbo.gitbooks.io/vue-loader/content/ 使用预处理器 在 Webpack 中,所有的预处理器需要和一个相应的加载器一同使用.vue- ...
- Vue + Webpack + Vue-loader 系列教程(1)功能介绍篇
原文地址:https://lvyongbo.gitbooks.io/vue-loader/content/ Vue-loader 是什么? vue-loader 是一个加载器,能把如下格式的 Vue ...
- 关于Vue.js 2.0 的 Vuex 2.0,你需要更新的知识库
应用结构 实际上,Vuex 在怎么组织你的代码结构上面没有任何限制,相反,它强制规定了一系列高级的原则: 应用级的状态集中放在 store 中. 改变状态的唯一方式是提交mutations,这是个同步 ...
- Vue.js 2.0 和 React、Augular等其他框架的全方位对比
引言 这个页面无疑是最难编写的,但也是非常重要的.或许你遇到了一些问题并且先前用其他的框架解决了.来这里的目的是看看Vue是否有更好的解决方案.那么你就来对了. 客观来说,作为核心团队成员,显然我们会 ...
- 窥探Vue.js 2.0 - Virtual DOM到底是个什么鬼?
引言 你可能听说在Vue.js 2.0已经发布,并且在其中新添加如了一些新功能.其中一个功能就是"Virtual DOM". Virtual DOM是什么 在之前,React和Em ...
- 初探Vue
Vue.js(读音/vju:/,类似于view),是近来比较火的前端框架,但一直没有怎么具体了解.实现过,就知道个啥的MVVM啦,数据驱动啦,等这些关于Vue的虚概念. 由于最近,小生在公司中,负责开 ...
随机推荐
- centos上安装python环境
1.安装python-pip 首先安装epel扩展源: yum -y install epel-release 更新完成之后,安装pip: yum -y install python- ...
- centos7上Jenkins通过rpm包方式直接安装及使用war包方式升级
一.通过rpm包方式直接安装jenkins 1.官网下载rpm安装包(前提是安装jdk) wget https://pkg.jenkins.io/redhat-stable/jenkins-2.121 ...
- Ubuntu环境下的iptables的端口转发配置实例
打开转发开关要让iptables的端口转发生效,首先需要打开转发开关方法一:临时打开,重启后失效$sudo su#echo 1 >/proc/sys/net/ipv4/ip_forward 方法 ...
- 【Hardware】i386、x86和x64的故事
(1)x86的由来 x86架构首度出现在1978年推出的Intel 8086中央处理器,它是从Intel 8008处理器中发展而来的,而8008则是发展自Intel 4004的.在8086之后,Int ...
- ButterKnife的使用及其解析
本博客介绍ButterKnife的使用及其源码解析. ButterKnife的使用 ButterKnife简介 添加依赖 在Project级别的build.gradle文件中添加为ButterKnif ...
- unittest实战(二):用例编写
# coding:utf-8import unittestfrom selenium import webdriverimport timefrom ddt import ddt, data, unp ...
- CSS单位计算总结
CSS单位总结 公共部分css body { background-color: #000; color: skyblue; margin: 0; padding: 0; } body>div& ...
- Redis系列四 - 分布式锁的实现方式
前言 分布式锁一般有3中实现方式: 数据库乐观锁: 基于Redis的分布式锁: 基于ZooKeeper的分布式锁. 以下将详细介绍如何正确地实现Redis分布式锁. 可靠性 首先,为了确保分布式锁的可 ...
- linux-TFTP服务
1.TFTP协议简介TFTP,全称是 Trivial File Transfer Protocol(简单文件传输协议),基于 UDP 实现,该协议简单到只能从远程服务器读取数据或向远程服务器上传数据. ...
- python http代理支持 https
首先需要2个软件来抓包. fiddler : http 代理软件可以分析,抓包,重放. wireshark : 全能抓包分析软件. RFC 提供了非常好的设计描述. https://tools.iet ...