vue、vuex、vue-router 快速上手文档

vue2+vuex+vue-router 快速入门(一) 简单介绍 vue2  vue 官方解释为一套构建用户界面的渐进式框架。而我的理解 vue 是一套以视图为核心、数据为驱动的组件化开发框架。使用过模板引擎的同学都知道:只要我们把数据传入已经编译好的模板中,便能渲染出我们想要的视图。// 伪码 import engine from TMplateEngine import template from 'somewhere'let data = {...} 阅读详情

vue 相关实例演示

开发环境

  • nodejs
  • 安装 vue-cli ( $ npm i --global vue-cli)
  • 快速生成项目 $ vue init webpack appName 或 vue init webpack-simple vue-demo01
  • 安装 $ npm i
  • 运行 $ npm run dev

vue 、vuex 、vue-router 实例演示

vue 中的相关注意事项

  • 在vue中template 中 所有的内容要被一个根节点包含起来

  • data 函数中是 业务逻辑里面定义的数据

  • 循环数据演示:

  <ul>
     <li v-for="item in list">{{item}}</li>
  </ul>
  • 绑定数据, 绑定html演示:
  <div id="app">
    <div v-bind:title="title"></div>
    <img v-bind:src="url" />
    <!-- 绑定属性还可以这样写 -->
    <img :src="url" />
    <div v-html="h2"></div>
    <div v-text="msg"></div>
    <div v-bind:class="{'red': flag, 'blue': !flag}">
      我是一个div, v-bind 也可以省略 即:v-bind:class 或者 :class
    </div>
    <ul>
      <!-- 循环, 让第一个变红 -->
      <li v-for="(item, key) in list" :class="{'red':key===0, 'blue': key===1}"></li>
    </ul>
    <div v-bind:style="{'width': boxWidth + 'px'">
      <span :style="{'color':'red'}"></span>
    </div>
  </div>

  <script>
    export default {
      data() {
        return {
          title:"xy",
          url:"xx",
          msg:"I'm test";
          h2:"<h2>Hello</h2>",
          flag: true,
          boxWidth:10
        }
      }
    }
  </script>

  <style>
    .red{

    }
    .blue{

    }
  </style>
  • vue 是一个MVVM的框架, model 改变影响视图, 视图改变影响model

  • vue 的双向数据绑定只能在表单元素中使用 input等, 使用 ref 来获取表单中的数据,演示:

  <div id="app">
    <h2>{{msg}}</h2>
    <input type="text" v-model="msg" />
  </div>

  <button v-on:click="getMsg()">获取</button>
  <button v-on:click="setMsg()">设置</button>
  <!-- 另一种触发事件的方法 -->
  <button @click="setMsg()">设置2</button>
  <input type="text" v-model="msg" ref="userinfo" />
  <script>
    export default {
      data() {
        return {
          msg: "I'm Msg"
        }
      },
      // 自定义方法的地方
      methods:{
        // 获取
        getMsg() {
          return alert(this.msg);
        },
        // 设置
        setMsg() {
          this.msg = "I'm Msg setted!"
        },
        // refs方式获取input值
        getInputValue() {
          console.log(this.$refs.userinfo.value);
        }

      }
    }
  </script>
  • 循环时的item和key
  <ul>
    <li v-for="(item, key) in list">
      {{item}}
    </li>
  </ul>
  • 页面上的传值处理
 <!-- 直接在括号中传递 -->
 <button @click="delete(1)">传值</button> 
  • 关于事件对象
  <!-- 注意,这里可以传递事件对象和其他参数 -->
  <button @click="eventFunc($event, arg1, arg2)">事件对象</button>
  • 在vue中写sass,需要在脚手架生成时选择支持sass开发
<style lang="scss">
  .box {
    background:green;
    .box-children {
      color: red;
    }
  }
</style>
  • 本地持久化存储的封装: 使用 localStorage 或 cookie

storage.js

  var storage = {
    set(key, value) {
      localStorage.setItem(key, JSON.stringfy(value))
    },
    get(key) {
      localStorage.getItem(key)
    },
    remove(key) {
      localStorage.removeItem(key)
    },
    removeAll() {
      localStorage.clear();
    }
  }
  export default storage;
  • vue的声明周期函数: 页面刷新就会触发的方法
  export default {
    /* 页面被加载 */
    mounted() {

    },
    mounted() {

    }
  }
  • 模块化组件: 头部,尾部,侧边栏的封装, 组件是vue最强大的功能之一,可扩展html元素, 封装可重用的代码

    封装头部组件:在组件中写业务逻辑

 <script>
  export default {
    data() {
      return {
        msg: 'header'
      }
    },
    methods:{
      run() {
        alert(1);
      }
    }
  }
 </script>
 <!-- scoped 是局部作用域 -->
 <style lang="scss" scoped>

 </style>

引入头部组件

  <!-- 3. 使用组件 -->
  <app-header></app-header>
  <script>
    // 1. 引入组件
    import appHeader form '';
    export default {
      data() {
        return {
          msg: 'Hello'
        }
      },
      // 2 . 挂载(或注册)组件
      compontents:{
        'app-header': appHeader
      }
    }
  </script>
  • 组件的组织

    ①、 通用组件: components

    ②、 子组件(不通用) : tpl

  • 声明周期的函数: 组件挂载, 数据监听, 更新, 和注销等事件触发的一系列过程的函数,这些方法叫做声明周期函数

  <div>这里是Msg: {{msg}}</div>
  <button @click="setMsg()">改变msg</button>
  <script>
    export default {
      data() {

      },
      methods() {
        setMsg() {
          this.msg = "我是改变后的数据"
        }
      },
      /* 实例创建之前 */
      beforeCreate() {

      },
      /* 实例创建完成 */
      created() {

      }
      /* 模板编译之前 */
      beforeMount() {

      }
      /* 组件挂载,模板编译之后 */
      mounted() {

      },
      /* 数据更新之前 */
      beforeUpdated() {

      },
      /* 数据更新完毕 */
      updated() {

      },
      /* 组件销毁之前 */
      beforeDestroy() {

      },
      /* 组件销毁完成 */
      destroyed() {

      }
    }
  </script>

注意:请求数据和操作虚拟dom都会放在 mounted() 中, 注意声明周期函数和自定义methods()里面的方法是同级兄弟关系

  • 注意:手工卸载组件, 会触发卸载和挂载组件
  <v-header v-if="flag"></v-header>
  <button @click="flag=!flag">挂载和卸载组件</button>
  • vue 的数据请求: vue-resource(官方提供的插件)), axios, fetch-jsonp

    vue-resource: 【推荐】

    ①、 安装:yarn add vue-resource

    ②、 在main.js 中引入vueResource from ‘vue-resource’

    ③、 使用vue-resource : Vue.use(vueResource)

    ④、 在vue中请求数据

  <button @click="getData">请求数据</button>
  <script>
    export default {
      data() {
        return {
          list:[]
        }
      },
      methods: {
        // 请求数据
        getData() {
          var url = "";
          this.$http.get(url)
            .then((res)=>{
              // 成功的回调
            })
            .catch((error)=>{
              // 失败的回调
            });
        }
      }
    }
    mounted() {
      // 声明周期中调用getData方法
      this.getData()
    }
  </script>
  • 使用 axios来请求数据:

    ①、 安装: yarn add axios

    ②、 导入: import Axios from ‘axios’ 哪里用,哪里导入

    ③、 使用演示:

  <script>
    export default {
      methods() {
        getData() {
          var url = "";
          Axios.get(api)
            .then(()=>{

            })
            .catch(()=>{

            });
        }
      }
    }
  </script>
  • axios 不支持jsonp, fetch-jsonp 可支持jsonp ,详细查看 github

  • 父子组件传值

    父传子:

    ①、在父组件中给子组件绑定属性

  <!-- 以下是传指令,方法和整个指令给子组件 -->
  <v-header :title="Ftitle" :run="Frun" :home="this"></v-header>

  <script>
    export default {
      data() {
        return {
          Ftitle: '标题'
        }
      }
      methods() {
        Frun() {

        }
      }
    }
  </script>

②、 在子组件中通过props接收父组件传过来的数据

  <!-- 此处的 title 用的就是从props中拿到的值 -->
  <h2> 我是头部组件 -- {{title}} </h2>
  <button @click="run()"> 调用父组件的run方法 </button>
  <button @click="getParent()">获取父组件的数据和方法</button>
  <script>
    export default {
      data() {
        return {

        }
      }
      methods() {
        /* 获取父组件的所有属性和方法 */
        getParent() {
          // 获取父组件的title
          alert(this.title); // 此处的title是从props中拿到的,
          alert(this.home.title); // 此处是从整个父组件中拿到的
          this.home.run(); // 还可以直接调用父组件的方法
        }
      }
      props:['title', 'run', 'home'] // 这里表示接受父组件传递过来的title

    }
  </script>

③、注意子组件和父组件定义的数据名不能冲突 不能父组件有msg,并传递给子组件, 然后子组件在data中定义相同的名称的数据

④、注意父组件不仅可以传递给子组件属性,还可传递方法

⑤、 除了直接传递,还可在子组件中验证父组件传递过来值得合法性, 基本不用

<script>
  export default {
    props:{
      "title":String,
      "run":Function, // 此处待验证
      'home': Object // 此处待验证
    }
  }
</script>
  • 父组件主动获取子组件的数据和方法

    ①、 调用子组件的时候定义ref

    ②、 在父组件中通过this.$refs.自定义的ref属性.数据/方法 来获取子组件的数据和方法

    父组件:

  <!-- 子组件 -->
  <v-header ref="header"></v-header>
  <button @click="getChildData()">获取子组件的数据和方法</button>
  <script>
    export default {
      methods: {
        getChildData() {
          this.$refs.header.run()
          console.log(this.$refs.header.msg);
        }
      }
    }
  </script>

子组件:

  <script>
    export default {
      data() {
        return {
          msg: '子组件的msg';
        }
      }
      methods: {
        run() {
          console.log("子组件的run");
        }
      }
    }
  </script>
  • 子组件主动获取父组件的数据和方法

    ①、$this.$parent.数据
    ②、 $this.$parent.方法

子组件中:

  <button @click="getParentData()"></button>
  <script>
    export default {
      methods() {
        getParentData() {
          alert(this.$parent.msg);
          this.$parent.run(); // 调用父组件的run方法
        }
      }
    }
  </script>
  • 非父子组件传值

    方法一:借助父子关系来传递,不方便,通过爷爷等节点
    方法二:通过事件广播的方式

    新建vue-event文件

import Vue from 'vue';
var event = new Vue();
export default event;

组件Homes中:广播数据

  <button @click="emitNews()">给news组件广播数据</button>
  <script>
    import vueEvent from 'vue-event';
    export default {
      data() {
        return {
          msg: '我是home'
        }
      }
      methods() {
        emitNews() {
          vueEvent.$emit('to-news', this.msg) // 广播数据
        }
      }
    }
  </script>

在news组件中接收数据


  <script>
    import vueEvent from 'vue-event';
    export default {
      mounted() {
        vueEvent.$on('to-news', function(data) {
          console.log(data);
        })
      }
    }
  </script>

方法三、通过vuex 进行数据传递,会在下面讲到

  • vue中的路由

    ①、 安装:yarn add vue-router

    ②、 引入main.js: import VueRouter from ‘vue-router’

    ③、 use 一下: Vue.use(VueRouter);

    ④、 配置路由: 创建组件,引入组件,定义路由,实例化路由,挂载路由,将写入App.vue中

    ⑤、 重定向和别名(默认跳转路由)

  const routes = [
    {
      path:'*', redirect: '/' // 注意这里默认跳转到首页
    }
  ]
  • 在路由中动态传递参数

    首先配置路由的时候

  const routers = [
    {path: '/content/:id', component: Content}
  ]

在router-link中

<!-- 写死的方式 -->
<router-link to="/content/123"><router-link>

<!-- 动态的方式 -->
<router-link :to="'/content/' + key" v-for="(item, key) in list"><router-link>

在content组件中获取id:

  <script>
    export default {
      mounted() {
        alert(this.$router.params.id); // 获取动态路由传值
      }
    }
  </script>
  • 使用get传值

    在配置路由时

  const routes = [
    {
      path:'/pcontent',
      component: PContent
    }
  ]

在router-link中

<router-link to="/pcontent?id=123"><router-link>

在pcontent模块中获取get传值

  <script>
    export default {
      mounted() {
        console.log(this.$router.query.id)
      }
    }
  </script>

如果是循环方式,同动态传递

  • 编程式导航、用javascript跳转页面
<button @click="goNews()">通过js跳转到新闻页面</button>
<script>
  export default {
    methods:{
      goNews() {
        this.$router.push({path:'news'})
        // 或者
        this.$router.push({path: '/content/495'})
      }
    }
  }
</script>
  • 关于命名路由的跳转

    在配置路由时,添加name属性

const routers = [
  {path:'/news',component:Content, name:'news'}
]

通过

this.$router.push({name:'news', params: {userId: 123}})
  • html5 模式和 hash模式的切换, 备注:这里可能需要后端来配置

    在实例化vue-router的时候

const router = new VueRouter({
  mode: 'history' // 这个是html5模式
})
  • 路由的嵌套
 /user
 /user/profile
 /user/login

在VueRouter中的配置

const router = new VueRouter({
  routes:[
    {
      path: '/user',
      component: User,
      children: [
        {
          path:'profile', // 注意这里是没有斜杠的
          component: UserProfile
        },
        {
          path:'login'
          component: UserLogin
        }
      ]
    }
  ]
})

在User组件中加上

<router-view></router-view>

一个路由里嵌入其他路由已完成

  • vuex 状态管理

    a. 不同组件之间的数据共享问题,数据持久化
    b. 页面之间传值之前用localStroage 和 sessionStorage
    c. 小项目中不用vuex中,会增加复杂度

    安装 vuex : yarn add vuex

    ①、 在src目录中新建一个vuex的文件夹

    ②、 vuex文件夹里新建一个文件store.js

    ③、 在store.js中引入vuex,并且use

import Vue form 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

// state 在vuex中用于存储数据
var state = {
  count:1
}

// mutations 里面放置方法, 主要用于改变state里面的数据
var mutations = {
  // 增加
  inCount() {
    ++state.count
  }
}

// vuex 的核心: vuex 实例化 Vuex.store
const store = new VueX.Store({
  state,
  mutations,
})

export default store;

在Home首页模块改变state的值

  <div>
    <h3>首页</h3>
    <div>{{this.$store.state.count}}</div>
  </div>
  <button @click="inCount()">增加数量</button>
  <script>
    // 引入 store
    import store from 'vuex/store'
    export default {
      data() {
        return {

        }
      },
      // 注册store
      store,
      methods() {
        // 改变vuex中的store中的数据
        inCount() {
          this.$store.commit('inCount'); // 调用store中定义的inCount方法, 改变state中的数据
        }
      }

    }
  </script>
  • vuex getter 正常情况下用不到

    在改变数据时的操作, 计算属性: 即:改变state数据的时候会触发 getters里面的方法,获取新的值

var getters = {
  computedCount: (state,getters) => {
    return state.count * 2
  }
}

const store = new Vuex.Store({
  state,
  mutations,
  getters
})

在展示页面

<div>{{this.$store.state.count}}</div>
<div>{{this.$store.getters.computedCount}}</div>

只要改变store中的数据,那么就会调用getters中相关的方法,
这个基本用不到

  • action 类似于mutation

    不同于mutation:
    ①、 Action 提交的是mutation, 而不是直接变更状态
    ②、 Action 可以包含任意异步操作

var actions = {
  inMutationCount(context) {
    /* 通过 context.commit 提交一个mutation */
    context.commit('inCount'); // 表示执行mutations中的inCount方法,改变state中的数据
  }
}

const store = new Vuex.Store({
  state,
  mutations,
  getters,
  actions
})

同样也需要将actions添加进入store

在外部通过dispatch来触发action中的方法

<script>
  export default {
    methods() {
      inCount() {
        this.$store.dispatch('inMutationCount');
      }
    }
  }
</script>

相关的文档

Vue2.0 框架配置:vue-cli + vue-router + vuex 写于 2017-2-7 (注:现在使用最新版的vue-cli已经可以统一配置一切,简单方便,本篇文章已过时 2018-3-15) Vue中文站:cn.vuejs.org vue-router官方教程:router.vuejs.org/zh-cn vuex官方教程:vuex.vuejs.org/zh-cn 完整干净Demo地址:coding.net/u/java_luo/p/Vue_Dem... 阅读详情

相关推荐

vue-router离线版中文文档

vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,适合用于构建单页面应用。vue的单页面应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来。传统的页面应用,是用一些超链接来实现页面切换和跳转的。在vue-router单页面应用中,则是路径之间的切换,也就是组件的切换。

VUE全家桶 (Vue-cli、Vue-route、Vuex)学习笔记

6. v-model 修饰符 v-model.number //因为v-model将得到的值自动转换为string 所以加一个修饰符的话就可以将这个字符串转化为number类型。⑥npm install vue-loader@13.0.0 vue-template-compiler@2.5.21 --save-dev //安装关于.vue文件的脚手架。5. v-model修饰符 v-model.lazy //当input标签失去焦点的时候才会改变这个 v-model值。

大雾起了清晨 3923

Anomalies,Factors,andMultiFactorModels

转 Anomalies, Factors, and Multi-Factor Models 作者:石川,量信投资创始合伙人,清华大学学士、硕士,麻省理工学院博士;精通各种概率模型和统计方法,擅长不确定性随机系统的建模及优化。知乎专栏:https://zhuanlan.zhihu.com/mitcshi。未经授权,严禁转载。 摘要:本文解释了异象、因子以及多因子模型的区别和联系;梳理了从异象到因子再...

绿杨 794

深入探讨 Vue.js 全家桶:Vue CLI、Vue Router 与 Vuex

Vue CLI 是一个标准化的工具链,旨在为 Vue.js 项目提供开箱即用的配置和构建设置。通过 Vue CLI,我们可以轻松地创建新项目、集成插件、定制项目配置,而无需从零开始配置 Webpack 或其他构建工具。Vue CLI 的强大之处在于其高度可配置性。项目创建后,Vue CLI 会生成一个文件,你可以在其中覆盖默认的 Webpack 配置,添加自定义 Loader、Alias、环境变量等。

Hellc007的博客 1718

AC7811无感FOC实战:从开环到闭环的电机控制调试全记录

本文详细记录了基于国产AC7811芯片实现无感FOC电机控制的全过程。从硬件软件环境搭建、开环I/F启动调试,到滑模观测器参数整定,再到平滑切入闭环及双环PID调节,提供了完整的实战步骤与参数调试心法。文章重点分享了无感控制从开环到闭环切换的关键技巧与常见问题排查清单,为工程师提供了一份避坑指南。

kotlin6android的博客 714

视频编解码——视频编解码器工作原理

目录什么是视频编解码器为什么需要视屏编解码器视频编码器与数字视频容器时评编码器的历史 什么是视频编解码器 简单来说就是用于压缩或解压数字视频的软件或硬件 编码是信息从一种形式或格式转换为另一种形式的过程,解码是编码的反向。 适用于视频 编码是将视频、音频的原始格式的文件通过压缩技术转换成另一种格式(视频如h.264,h.265,m-jpeg等)。 解码是编码的反向过程。应用中,一般是将h.264,h.265格式数据解码成如YUV格式裸流交给显示器显示。 为什么需要视屏编解码器 需要在有限的带宽或存储空间

路人coder 1万+

Vue官方文档(48): vuex的基本使用

vue

fakeff的博客 233

RC电路(一):微分|积分

的取值不同,会导致输出波形和输入波形之间的关系也不同,由此也会产生不同的应用。输出为0,随着电容充满电,运放-输入端得到的分压为正最大值,可等效成一个电压源,且电压不可突变,此时电流反向为最大值,开始充电时的容抗为0,电压不可突变则电压差为0,运放。开始充电时的容抗为0,电压不可突变则电压差为0,运放。输入端得到的分压也不可突变,随着电容放完电,于是。,因电容上电压不能突变(来不及充电,相当于短路,由上分析可得积分运算电路中,输出为运放的负最大峰值,随着电容充满电,输出为运放的正最大峰值,随着电容放完电,

既有随处可栖的江湖,也有追风逐梦的骁勇! 1万+

Vue 快速入门

Vue 快速入门

分享我的点点滴滴,在成长路上与你同行! 1805

深入解析Android Thermal框架:从应用层到驱动层的温度管理机制

本文深入解析Android Thermal框架的温度管理机制,从应用层到驱动层详细介绍了温度监测、热状态评估和降温策略执行的全过程。通过分层架构解析和关键组件交互,帮助开发者理解Android设备如何实现高效的温度控制,确保硬件安全并优化性能。

weixin_29303701的博客 257

车载通信技术原理-CAN通讯和代码配置:奥迪A6轿车总线拓扑图

CAN总线是一种用于汽车监测与控制系统的串行通信协议,由德国Bosch公司开发。它具有多主工作方式、优先级仲裁、高抗干扰等特点,支持点对点、广播等多种通信方式,传输距离可达10公里。CAN协议采用差分信号传输,物理层使用双绞线,数据链路层实现错误检测、位填充等功能。协议帧类型包括数据帧、遥控帧、错误帧等。CAN总线自1986年发布以来,已成为汽车电子系统的标准配置,广泛应用于车载网络。文章还提供了S32K144芯片的CAN驱动代码示例。

擎天柱工坊 1070

vue 快速入门

Vue.js(通常简称为 Vue)是一个开源的JavaScript框架,用于构建用户界面和单页面应用程序(SPA)。

2301_80035594的博客 3188

【第2章>第10节】深度学习DenseNet模型分析与matlab仿真

本文介绍了基于DenseNet深度学习模型的图像分类MATLAB实现方法。主要内容包括:1. DenseNet模型原理,详细解析了初始卷积层、密集块、过渡层等核心结构;2. 在MATLAB环境下完成DenseNet工具箱安装和测试样本准备;3. 实现图像预处理(统一缩放为224×224)、模型训练和测试的完整流程;4. 提供了混淆矩阵和准确率等测试结果分析。文章附带完整的MATLAB程序代码和操作视频教程,适合深度学习初学者快速掌握DenseNet模型的图像分类应用。通过实际测试,验证了该方案的有效性。

FPGA/MATLAB学习教程/源码/项目合作开发 330

VueJs2.0建议学习路线

最近VueJs确实火了一把,自从Vue2.0发布后,Vue就成了前端领域的热门话题,github也突破了三万的star,那么对于新手来说,如何高效快速的学习Vue2.0呢。 既然大家会看这篇文章,那么肯定是vue的学习者了,或是遇到的瓶颈,或者刚刚开始学,不知道如何快速起步,本篇文章将带领大家在最短的时间内构件一个学习Vue的学习路线 Vuejs的作者尤雨溪尤大也写过一篇关于新手学...

weixin_30360497的博客 69

Mac安装Claude Code的3种方式及5类报错解决方案

介绍在Mac上安装Claude Code的3种实测可行方式(官方dmg、Homebrew+ARM原生构建、Docker容器化),并针对Gatekeeper签名验证失败、Rosetta 2内存对齐崩溃、Python ABI兼容性冲突等5类高频报错提供根因分析与可复现解决方案,覆盖M1–M3及Intel

weixin_28728443的博客 365

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

前端开发者的终极学习宝库:Ebook项目中的Angular、React、Vue官方文档与学习指南 [特殊字符]

对于前端开发者来说,持续学习是保持竞争力的关键。在众多的学习资源中,Ebook项目为前端开发者提供了一个完整的电子书学习宝库,特别是包含了Angular、React、Vue三大主流框架的官方文档和学习指南。这个开源项目汇集了各类高质量的电子书资源,为前端开发者打造了一个一站式学习平台。 ## 🚀 为什么选择Ebook项目作为前端学习资源? Ebook项目是一个精心整理的电子书集合,专门为开发

gitblog_00496的博客 731

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

前端三大主流框架

AngularAngular 官方同步中文文档:https://angular.cn/docsRxjs官方文档翻译:https://buctwbzs.gitbooks.io/rxjs/content/rookie-primer.htmlTypescript 中文网:https://www.tslang.cn/docs/home.html ReactReact 官方同步中文...

weixin_30289831的博客 81

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

【Vue.js】渐进式 JavaScript 框架

官网:Vue.js待总结

李留白 2607

10分钟快速上手Electron-Vue:用Vue.js轻松构建跨平台桌面应用

你是否想要用熟悉的前端技术栈开发桌面应用?Electron-Vue正是你需要的解决方案!这个基于Electron和Vue.js的桌面应用开发框架,将Vue.js的现代化开发体验与Electron的跨平台能力完美结合,让你能够用前端技术快速构建专业的桌面应用程序。 ## 🎯 为什么选择Electron-Vue?前端开发者的桌面应用利器 ### 传统开发 vs Electron-Vue开发对比

gitblog_00718的博客 187

使用vite安装vue3项目,vue3安装router和vuex

目录 安装vite/创建vue3项目 安装router 安装vuex 安装vite/创建vue3项目 node环境就不说了 看下这个网址就行 下个较新的稳定版本就行,推荐14以上 命令行输入 npm init vite@latest 然后控制台会询问项目名称,自己其就行了 我这里就叫vue3vite了 j接下来控制台会要求选择项目类型和使用语言,按需选择即可 项目就创建好了,但没有依赖,所以我们这里还是要安装一下,根据控制台提示按步操作就行了 安装router 首先在控制.

shinjie1210的博客 7351

vue-router、vue-cli、vuex在cmd下快速安装使用

vue-router、vue-cli、vuex在cmd下快速安装使用vue-router安装配置及使用路由vue-cli安装配置vuex安装使用对State、Getter、Mutation、Action、Module的理解使用辅助函数...mapGetters和...mapActions vue-router 安装 a. cmd切换盘符到当前项目的文件夹下 b. 安装路由模块 npm inst...

Duktig的博客 1366

Vue CLI,Vue Router,Vuex

Vue CLI是 Vue.js 的官方命令行工具,用于快速搭建 Vue.js 项目。它提供了一个图形界面(通过vue ui命令访问),以及一个命令行界面,允许开发者通过简单的命令来生成和管理 Vue 项目。Vue CLI 支持各种项目配置,包括单文件组件(SFCs)、路由、状态管理、构建工具配置等。

a3098448071的博客 1814

Vue3应用之使用Vite搭建Vue3项目以及TypeScript、Vue Router、Vuex、Ant Design的使用

尤大的 Vue3.0 已经发布有一阵子了, 已经很成熟了。今天想起来,是时候该上手体验分享一波了。 前言 大家都知道,在 Vue3 生态系统中有一个新构建工具 Vite ,它的开发服务器比 Vue CLI 快 10 ~ 100倍,是不是很好奇?具体的内容可以移步至:迟到的 Vue3.0 与 Vite 的体验学习总结 的 七、Vite 与 Vue CLI 阅读。 本文将主要分享如何使用 Vite 来创建一个 Vue3.0 的项目,并且结合相关内容(TypeScript、Vue Router、Vuex、An.

XH_jing的博客 1万+

vue全家桶(vue-cli, vue-router, axios, vuex)

vue全家桶包括(vue,vue-cli, vue-router, axios, vuex) 一、Vue 前两篇已经用vue-cli和vue/cli搭建了Vue项目,此处就不赘述了。 二、Vue-router Vue的路由,先献上文档(https://router.vuejs.org/zh-cn/)。 路由在全家桶里面定位是什么呢,创建单页应用!简单!我们知道Vuejs是一系列的组件组成应用,既然...

獨孤殤的博客 1672

electron-vue 内置 Vue 插件全景:axios、vue-electron、vue-router、vuex 与 vuex-electron 的集成与实战指南

electron-vue 脚手架在 `vue-cli` 初始化阶段会预置一组经过验证的 Vue 插件组合,覆盖网络请求、Electron API 访问、SPA 路由与集中式状态管理四大核心场景。本文以官方文档 `vue_accessories` 为主体,结合本仓库脚手架源码([meta.js](https://link.gitcode.com/i/2f12f10aaafa9b811940f0173

gitblog_01119的博客 924

5分钟搞定vuex-router-sync:Vue Router与Vuex双向状态同步快速上手教程

**vuex-router-sync** 是一个让 Vue Router 与 Vuex 状态轻松保持一致的轻量级库:调用一行 `sync(store, router)`,当前路由信息就会实时同步到 Vuex 的 `route` 模块中,反向同步同样自动生效。本教程面向 Vue 新手,带你 5 分钟内完成安装、接入和原理理解。 ## 为什么需要 Vue Router 与 Vuex 状态同步? 在

gitblog_01126的博客 152
上一篇: Typescript 中的模块使用
下一篇: Python笔记:纯python处理矩阵:对每个元素进行特定位数的四舍五入处理
Wang's Blog
博客等级 码龄12年 7438粉丝 2421原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wang's Blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值