vue + vue-router + vue-resource 基于vue-cli脚手架 --->笔记

ps: 基于Vue2.0 npm的vue-cli脚手架

在vue-router中路由路径的简写代码:

点击打开项目 > build > webpack.base.conf.js 找到webpack.base.conf.js文件修改即可
  值得注意的是,修改了alias下的引用路径后,要重启项目(npm run dev),否则将会报错

function resolve (dir) {
  return path.join(__dirname, ‘..‘, dir)
}

module.exports = {
  entry: {
    app: ‘./src/main.js‘
  },
  output: {
    path: config.build.assetsRoot,
    filename: ‘[name].js‘,
    publicPath: process.env.NODE_ENV === ‘production‘
      ? config.build.assetsPublicPath
      : config.dev.assetsPublicPath
  },
  resolve: {
    extensions: [‘.js‘, ‘.vue‘, ‘.json‘],
    alias: {
      ‘vue$‘: ‘vue/dist/vue.esm.js‘,
      ‘@‘: resolve(‘src‘),
      ‘components‘: resolve(‘src/components‘),
    }
  },

下面代码中即用到简写的路由路径:components

ps: 值得注意的是1.0中路由默认展现第一个组件的go(‘/goods‘)方法,在2.0中不行,可用 导航式编程 router.push(‘/goods‘)
      或者---在路由配置项中进行设置,用 重定向 的方法
      如下 routes 设置项-->  {path: ‘/‘, redirect: goods},即默认进来 ‘/‘ 未加路由地址时,显示 goods 这个组件

导航式编程方法:

import Vue from ‘vue‘;
import VueRouter from ‘vue-router‘;
Vue.use(VueRouter);
import goods from ‘components/goods/goods‘;
import ratings from ‘components/ratings/ratings‘;
import seller from ‘components/seller/seller‘;
const routes = [
  {path: ‘/‘, redirect: goods, name:"商品"},
  {path: ‘/goods‘, component: goods, name: "商品"},
  {path: ‘/ratings‘, component: ratings, name: "评论"},
  {path: ‘/seller‘, component: seller, name: "商家"}
]
export default new VueRouter({
  routes: routes
})

重定向方法:  

import Vue from ‘vue‘;
import router from ‘./router‘;
import App from ‘./App‘;
router.afterEach((to, from, next) => {
  document.title = to.name;
})
router.push(‘/goods‘)
/* eslint-disable no-new */
new Vue({
  el: ‘#app‘,
  router,
  template: ‘<App/>‘,
  components: {App}
});

  

基于vue-router路由切换时,动态显示组件或页面模块的标题方法:

const routes = [
  {path: ‘/‘, redirect: goods, name:"商品"},
  {path: ‘/goods‘, component: goods, name: "商品"},
  {path: ‘/ratings‘, component: ratings, name: "评论"},
  {path: ‘/seller‘, component: seller, name: "商家"}
]ps: 其中name值,就是上面代码中路由配置的组件的 name 值
router.afterEach((to, from, next) => {
  document.title = to.name;
})

  

 

参考地址 https://juejin.im/entry/585377cf8e450a006c53aef1

时间: 2024-10-06 05:59:05

vue + vue-router + vue-resource 基于vue-cli脚手架 --->笔记的相关文章

基于VUE.JS的移动端框架Mint UI

Mint UI GitHub:github.com/ElemeFE/mint 项目主页:mint-ui.github.io/# Demo:elemefe.github.io/mint- 文档:mint-ui.github.io/docs/# 由饿了么前端团队推出的 Mint UI 是一个基于 Vue.js 的移动端组件库.自 6 月初开源以来,根据社区和团队内部的反馈,修复了一些 bug 并新增了部分组件,于本周发布了 0.2.0 版本.本文介绍如何从零开始构建一个使用 Mint UI 的 Vu

基于Vue的前后端分离项目实践

一.为什么需要前后端分离 1.1什么是前后端分离  前后端分离这个词刚在毕业(15年)那会就听说过,但是直到17年前都没有接触过前后端分离的项目.怎么理解前后端分离?直观的感觉就是前后端分开去做,即功能和职责上的一种划分,前端负责页面的渲染,部分页面交互的逻辑,然后通过网络请求与后端进行数据的交互:后端则着重关注业务逻辑的处理,直接操控数据库. 1.2前后端未分离前(1)jsp + servlet 开发模式: JSP页面:负责视图层的渲染及交互,内部可以嵌入java 代码,在某些场景下开发起来比

追求极致的用户体验ssr(基于vue的服务端渲染)

首先这篇博客并不是ssr建议教程,需要ssr入门的我建议也不要搜索博客了,因为官网给出了详细的入门步骤,只需要step by step就可以了,这篇博客的意义是如何使用ssr,可能不同的人有不同的意见,我舍弃了ssr中的vuex和vue-router增加了redis,serverfetch等等实现了适合自己公司的业务,个人认为并不是所有的东西都值得吸收,对我来说我能用到的只是ssr将vue生成一个html和对应的js. 虾面我们来看看什么是服务端渲染? 官网给出的解释: Vue.js 是构建客户

基于Vue实现后台系统权限控制

原文地址:http://refined-x.com/2017/08/29/基于Vue实现后台系统权限控制/,转载请注明出处. 用Vue/React这类双向绑定框架做后台系统再适合不过,后台系统相比普通前端项目除了数据交互更频繁以外,还有一个特别的需求就是对用户的权限控制,那么如何在一个Vue应用中实现权限控制呢?下面是我的一点经验. 权限控制是什么 在权限的世界里服务端提供的一切都是资源,资源可以由请求方法+请求地址来描述,权限是对特定资源的访问许可,所谓权限控制,也就是确保用户只能访问到被分配

前后端分离实践:基于vue实现网站前台的权限管理

Javascript做为当下的热门语言,用途很广泛,从前端到后端处处可见其存在,该技术如今在我们项目内部也大量使用来开发诸如CMS系统以及其他其他一些数据分析系统的前端页面,为此个人非常感兴趣并将其作为帽子卡的扩展内容来进行课余学习. Javascript框架鳞次栉比,但基本原理大致相同,因此选用国内人开发的vue.js进行一个初步的尝试.学习vue.js也一周多的时间了,说起vue的主要用法,无外乎Declarative Rendering.Component System.Client-si

记一次基于vue的spa多页签实践经验

前言 最近收到一个这样的需求,要求做一个基于 vue 和 element-ui 的通用后台框架页,具体要求如下: 要求通用性高,需要在后期四十多个子项目中使用,所以大部分地方都做成可配置的. 要求做成脚手架的形式.可以 npm 安装 要求实现多页签,并且可以通过浏览器 url 回显多页签.而且页签内要维护一个历史记录,可以后退 组件要求异步加载,减少首屏加载时间. 很明显,这就是一个 类 ERP 的应用. 做过 JSP 等后台的同学,对多页签应该都很熟悉吧. 那接下来我们就来谈谈实现. 通用性高

基于vue的nuxt框架cnode社区服务端渲染

nuxt-cnode 基于vue的nuxt框架仿的cnode社区服务端渲染,主要是为了seo优化以及首屏加载速度 线上地址 http://nuxt-cnode.foreversnsd.cngithub地址 https://github.com/Kim09AI/nu... 技术栈 vue vue-router vuex nuxt axios simplemde ES6/7 stylus 目录结构 ├─npm-shrinkwrap.json ├─nuxt.config.js # nuxt配置文件 ├

基于Vue公众号开发中的哪些坑 (严重鄙视ios,遇到的坑基本都是在ios中)

一.ios白屏问题ios端基于vue开发的H5无法正常显示,白屏问题1.代码问题确定方法:在ie/edge浏览器中打开,看是否正常显示,如果仍然白屏,可以确定问题解决方法:1.代码中是否使用es6,如果使用,确定使用es6转es5,(npm install babel-polyfillnpm install es6-promise)2.参考 https://www.cnblogs.com/love314159/articles/9355785.html3.以上方法都不行的话,查看源码是在main

abp框架运行——前后端分离(基于VUE)

目录 1.介绍abp 2.abp如何工作 3.运行Domo 3.1官网点击 创建Demo 3.2 配置NetCore,选择Vue 3.3 输入系统名称验证码 4.官方手册文档 5.VUE项目 6. Swagger用户名密码登录 6.1 获取所有用户接口 7.Abp vNext下一代 8. Abp 第三代 9.前端 9.1 依赖包安装 9.2 运行前端代码 9.3 登录截图 9.4 用户管理截图 功能 思想 工具 数据迁移 Angular版本 1.介绍abp 全称:aspnetboilerplat