vue---day04
1. Node.js
1.1 介绍:
- Node.js 是一个JavaScript运行环境,实质上是对Chrome V8引擎的封装。
- Node.js 不是一个 JavaScript 框架,不同于Django。Node.js 更不是前端的库,不能与 jQuery、ExtJS 相提并论。
- Node.js 是一个让 JavaScript 运行在服务端的开发平台,它让 JavaScript 成为与PHP、Python、Perl、Ruby 等服务端语言平起平坐的脚本语言。
1.2 安装:
直接去官网下载安装 https://nodejs.org/en/
1.3 运行测试
开始 -> 运行 -> cmd -> Enter
查看版本:node --version
打开:node
测试:console.log('Hello node')
退出:.exit
2. npm
2.1 介绍
任何计算机编程语言都包含了丰富的第三方库,比如Python,pip是python的第三方库管理工具。而npm是JavaScript这么语言的第三方库管理工具。
2.2 检测
装好node.js之后,默认已经安装好了npm包管理工具。可以输入npm命令机械能测试。
2.3 基本命令
- 初始化:
npm init --y
- 安装:
全局:npm install -g <package>
局部:
npm install <package> --save
npm install <package> --save-dev
- 卸载
全局:npm uninstall <package> -g
局部:
npm uninstall <package> -S
npm uninstall <package> -D
3. vue-cli
3.1 安装
npm install -g vue vue-cli
3.2 新建项目
3.2.1 初始化
vue init webpack mydemo
3.2.2 根据提示输入:
Project name mydemo
? Project description A
? Author
? Vue build standalone
? Install vue-router? Yes
? Use ESLint to lint your code? No
? Set up unit tests No
? Setup e2e tests with Nightwatch? No
? Should we run `npm install` for you after the project has been created? (recommended) npm
3.2.3 根据提示启动
cd mydemo
npm run dev
3.3 运行
I Your application is running here: http://localhost:8080
浏览器访问127.0.0.1:8080
4. vuex
4.1 安装使用
- 第一步:Vue中使用Vuex
Vue.use(Vuex);
- 第二步:实例化一个store对象
let store = {
state:{
name:'python',
},
};
- 第三步:通过计算属性来获取store对象中的数据
let App = {
template:`
<div>
<h1>{{ name }}</h1>
</div>
`, computed:{
name(){
return this.$store.state.name
},
},
};
- 第四步:注册到根实例当中
new Vue({
el:"#app",
template:`<App/>`,
components:{
App,
},
store:store,
);
4.2 getters:获取
let store = new Vuex.Store({
state: {
name: '子牙',
age:22,
},
getters:{
getAge(state){
return state.age + 10
}
},
});
let App = {
template: `
<div>
<h1>{{ name }}</h1>
<h1>{{ age }}</h1> </div>
`,
computed:{
name(){
return this.$store.state.name;
},
age(){
return this.$store.getters.getAge;
},
},
};
4.3 mutations:修改
let store = new Vuex.Store({
state: {
name: '子牙',
age: 22,
score: 88,
},
getters:{
getAge(state){
return state.age + 10
}
},
mutations:{
changeScore(state,payload){
this.score += payload
}
},
});
let App = {
template: `
<div>
<h1>{{ name }}</h1>
<h1>{{ age }}</h1>
<h1>{{ score }}</h1> <button @click="changeScore">点击修改分数</button>
</div>
`,
computed:{
name(){
return this.$store.state.name;
},
age(){
return this.$store.getters.getAge;
},
score(){
return this.$store.state.score;
}
},
methods:{
changeScore(){
this.$store.commit('changeScore',2)
}
}
}; 4.4 actions:
let store = new Vuex.Store({
state: {
name: '子牙',
age: 22,
score: 88,
},
getters:{
getAge(state){
return state.age + 10
}
},
mutations:{
changeScore(state,payload){
this.score -= payload
},
addScore(state,payload){
this.score += payload
},
},
actions:{
addScore(context,payload){
setInterval(() => context.commit('addScore',payload),3000);
}
},
});
let App = {
template: `
<div>
<h1>{{ name }}</h1>
<h1>{{ age }}</h1>
<h1>{{ score }}</h1> <button @click="changeScore">点击修改分数</button>
<button @click="addScore">点击增加分数</button>
</div>
`,
computed:{
name(){
return this.$store.state.name;
},
age(){
return this.$store.getters.getAge;
},
score(){
return this.$store.state.score;
}
},
methods:{
changeScore(){
this.$store.commit('changeScore',2)
},
addScore(){
this.$store.dispath('addScore',1)
}
}
};
vue---day04的更多相关文章
- day04之VUE痛悟
vue组件组件分为三部分
- vue学习-day04(路由)
目录: 1.组件传值-父组件向子组件传值和data与props的区别 2.组件传值-子组件通过事件调用向父组件传值 3.案例:发表评论.使用ref获取DOM元素和组件引用 ...
- Vue 基础 day04
什么是路由 后端路由: 对于普通的网站,所有的超链接都是URL地址,所有的URL地址都对应服务器的资源: 前端路由: 对于单页面应用程序来说,主要是通过URL中的hash(#)来实现不同页面之间的跳转 ...
- vue大型电商项目尚品汇(前台篇)day04
这几天一直都在做项目,只是没有上传上来,即将把前台项目完结了.现在开始更新整个前台的部分 一.面包屑处理 1.分类操作 点击三级联动进入搜索产生面包屑,直接取参数中的name即可 点击x怎么干掉这个面 ...
- vue大型电商项目尚品汇(后台篇)day04
昨天太晚就没来得及更新,今天是spu管理界面,这个界面一共有三个界面需要切换,完成了两个界面,而且今天的难度在于最后两个章节,富有一定的逻辑性,当然中间也有很多需要注意的,比如ElementUI的照片 ...
- vue脚手架安装
1. 脚手架: 如何: 1. 安装脚手架的工具命令: npm i -g @vue/cli 电脑安装完命令后 : 直接创建 vue create 文件夹名字 2. 用命令反 ...
- vue_shop(基于vue电商管理后台网站)
vue_shop 目录 vue_shop day01 实现登录功能 项目预开发处理 Login.vue完整代码: 处理步骤: 添加element-ui的表单组件 添加第三方字体: 添加表单验证 导入a ...
- 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 ...
随机推荐
- Flask博客类登录注册验证模块代码(十四)
1 文件系统 blog #博客类 App forms #表单 __init__.py user.py models #模型 __init__.py user.py static #静态文件 templ ...
- 再学UML-Bug管理系统UML2.0建模实例(一)
1.项目概述 随着软件项目规模和复杂性的增大,有效跟踪和管理项目中存在的缺陷Bug变得越来越重要.每一个软件企业都需要妥善处理软件中的缺陷,这将直接关系到软件过程质量与软件产品质量,但并非 ...
- 【Spring实战】—— 10 AOP针对参数的通知
通过前面的学习,可以了解到 Spring的AOP可以很方便的监控到方法级别的执行 ,针对于某个方法实现通知响应. 那么对于方法的参数如何呢? 比如我们有一个方法,每次传入了一个字符串,我想要知道每次传 ...
- 一张图看懂微软Power BI系列组件
一.Power BI简介 Power BI是微软最新的商业智能(BI)概念,它包含了一系列的组件和工具.话不多说,直接上图吧: Power BI的核心理念就是让我们用户不需要强大的技术背景,只需要掌握 ...
- pl/sql中的一种链接数据库方式
今天看开发人员如此连接数据库:
- 小组Scrum第一次冲刺
团队任务描述: 在确定完分组,并对于敏捷开发做了相应的了解之后,我们团队开始了第一次的冲刺.对于我们团队的第一次的 Scrum冲刺,我们团队开展了团队会议.首先,我们明确了我们的目标,对其进行了相对初 ...
- 关于Java中截取字符串
获取系统时间:to_char(sysdate,'yyyy-mm-dd')截取CREATETIME常量的前10位字符串:CREATETIME.substring(0,10)截取DESCRIPT常量的前2 ...
- POJ-3267 The Cow Lexicon---删除字符匹配单词
题目链接: https://cn.vjudge.net/problem/POJ-3267 题目大意: 题意就是给出一个主串,和一本字典,问最少在主串删除多少字母,可以使其匹配到字典的单词序列. PS: ...
- bat 批处理变量
@echo off setlocal enabledelayedexpansion d: rem 更改d:\bat为当前目录 cd /d bat rem 变量使用 + echo %a% echo %C ...
- js中的AJAX
AJAX:Asynchronous JavaScript and XML.意思就是用JavaScript执行异步网络请求. 如果仔细观察一个Form的提交,你就会发现,一旦用户点击Submit按钮,表 ...