Vue路由与nodejs环境搭建

简介: Vue路由与nodejs环境搭建

一、Vue路由

1.1 SPA简介

在实现路由之前我们先了解SPA是什么 ?

SPA:单页Web应用(single page application,SPA),就是只有一个Web页面的应用。是加载单个HTML页面,并在用户与应用程序交互时动态更新该页面的Web应用程序

  • 单页面应用程序:

       只有第一次会加载页面, 以后的每次请求, 仅仅是获取必要的数据.然后, 由页面中js解析获取的数据, 展示在页面中

  • 传统多页面应用程序:

       对于传统的多页面应用程序来说, 每次请求服务器返回的都是一个完整的页面

  • 优势

       减少了请求体积,加快页面响应速度,降低了对服务器的压力

       更好的用户体验,让用户在web app感受native app的流畅

1.2 路由简介

       vue的单页面应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来。

传统的页面应用,是用一些超链接来实现页面切换和跳转的。在vue-router单页面应用中,则是路径之间的切换,实际上就是组件的切换。

路由就是SPA(单页应用)的路径管理器。再通俗的说,vue-router就是我们WebApp的链接路径管理系统。

1.3 路由实现思路

1、确保引入Vue.vue-router的js依赖

2、首先需要定义组件(就是展示不同的页面效果)

3、需要将不同的组件放入一个容器中(路由集合)

4、将路由集合组装成路由器

5、将路由挂载到Vue实例中

6、定义锚点

7、跳转

1.3.1 引入vue-router的js依赖

进入 BootCDN官网 复制我们所需依赖。

<script src="https://cdn.bootcdn.net/ajax/libs/vue-router/2.6.0/vue-router.js"></script>

1.3.2 定义组件

var Home = Vue.extend({
    template: '<div><p>进入首页内容...</p></div>'
});
var About = Vue.extend({
    template: '<div><p>进入商品内容...</p></div>'
});

1.3.3 定义路由

//定义路由,"/"代表根路径,路由中可以使用name属性,一遍情况不建议使用
var routes = [
    {path: '/home',component: Home},
    {path: '/about',component: About}
];

1.3.4 组装路由器

//创建路由器实例
const router = new VueRouter({
    routes: routes
});

1.3.5 将路由挂载根实例

new Vue({
    el: '#xw',
    // 将路由器挂载到指定边界
  router
})

1.3.6 定义触发路由的按钮

<div id="xw">
    <router-link to="/home">首页</router-link>
    <router-link to="/about">商品内容</router-link>
</div>

1.3.7 定义锚点

<router-view></router-view>

1.4 示例

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title></title>
    <!-- 分装了vue和vue-router的JS -->
    <script src="js/vue&jquery.js"></script>
  </head>
  <body>
    <div id="xw">
      <router-link to="/home">首页</router-link>
      <router-link to="/about">商品内容</router-link>
      <!-- 定义锚点 -->
      <router-view></router-view>
    </div>
    <script>
      var Home = Vue.extend({
        template: '<div><p>进入首页内容...</p></div>'
      });
      var About = Vue.extend({
        template: '<div><p>进入商品内容...</p></div>'
      });
      //定义路由,"/"代表根路径,路由中可以使用name属性,一遍情况不建议使用
      var routes = [{
          path: '/home',
          component: Home
        },
        {
          path: '/about',
          component: About
        }
      ];
      //创建路由器实例
      const router = new VueRouter({
        routes: routes
      });
      new Vue({
        el: '#xw',
        // 将路由器挂载到指定边界
        router
      })
    </script>
  </body>
</html>

二、nodejs环境搭建

2.1 nodejs简介

  • Node.js是一个基于Chrome V8引擎的[JavaScript运行环境]。 Node.js使用了一个事件驱动、非阻塞式I/O 的模型。
  • Node.js是一个让JavaScript运行在服务端的开发平台,它让JavaScript成为与PHP、Python、Perl、Ruby等服务端语言平起平坐的脚本

我们还需要知道Node.js的包管理工具(package manager)—— npm

为啥我们需要一个包管理工具呢?

  1. 因为我们在Node.js上开发时,会用到很多别人写的JavaScript代码。如果我们要使用别人写的某个包,每次都根据名称搜索一下官方网站,下载代码,解压,再使用,非常繁琐。
  2. 于是一个集中管理的工具应运而生:大家都把自己开发的模块打包后放到npm官网上,如果要使用,直接通过npm安装就可以直接用,不用管代码存在哪,应该从哪下载。更重要的是,如果我们要使用模块A,而模块A又依赖于模块B,模块B又依赖于模块X和模块Y,
  3. npm可以根据依赖关系,把所有依赖的包都下载下来并管理起来。否则,靠我们自己手动管理,肯定既麻烦又容易出错。

注:npm==maven  有点类似

2.2 nodejs下载

由于Node.js平台是在后端运行JavaScript代码,所以,必须首先在本机安装Node环境。

下载地址:下载 | Node.js

选择自身系统的Node.js版本,这里我选择的是Windows系统、64位

2.3 配置node

将下载的文件解压到指定路径(路径不能有中文),并在解压后的目录下建立node_global和node_cache这两个目录

注1:新建目录说明

          node_global:npm全局安装位置

          node_cache:npm缓存路径

新建目录:

2.4 配置环境变量

NODE_HOME: 配置的是nodeJS解压的根路径 如:D:\Tools\node-v18.16.1-win-x64

添加path:

PATH:%NODE_HOME%

PATH:%NODE_HOME%\node_global

注1:环境变量查看

        echo %node_home%

        echo %path%

 

注2:测试安装是否成功:打开cmd窗口,输出如下命令会输出NodeJs和npm的版本号

         node -v

         npm -v

2.4.1 配置npm全局模块路径和cache默认安装位置

打开cmd,分开执行如下命令:把路径替换成自己的路径

npm config set cache "D:\Tools\node-v18.16.1-win-x64\node_cache"
npm config set prefix "D:\Tools\node-v18.16.1-win-x64\node_global"

2.4.2 安装淘宝镜像

doc指令:

npm config set registry https://registry.npm.taobao.org/

成功后,在c盘的User下面看到一个.npmrc文件

2.4.3 查看npm全局路径设置情况

在终端中运行以下命令来安装项目所需的依赖模块,例如Express框架:

npm install webpack -g

以上命令执行完毕后,会生成如下文件:

 注意:下载过程中出现warn不用管,出现Error,删掉下载的破碎文件重新下载

2.5 运行下载的Node.js项目

准备一个没有下载js的项目, 然后进到该项目的根目录doc界面,输入 npm i 指令,下载依赖。

npm i

出现下列代码就表示下载好了:

最后输入npm run dev 指令开始运行项目

相关文章
|
15天前
|
JavaScript
【vue】如何跳转路由到指定页面位置
【vue】如何跳转路由到指定页面位置
19 0
|
14天前
|
JavaScript 数据可视化 算法
vue3+threejs可视化项目——搭建vue3+ts+antd路由布局(第一步)
vue3+threejs可视化项目——搭建vue3+ts+antd路由布局(第一步)
35 6
|
1天前
|
JavaScript
vue中watch监听路由传来的参数变化问题
vue中watch监听路由传来的参数变化问题
4 0
|
3天前
|
缓存 JavaScript
在 Vue 组件中使用计算属性和侦听器来响应路由变化
Vue Router 中,计算属性和侦听器常用于根据路由变化更新组件状态。计算属性缓存依赖,当路由参数改变时自动更新,如示例中的 `userId`。侦听器则监听 `$route` 变化,执行相应操作,例如在 `currentUserId` 示例中响应 `userId` 更新。计算属性适合简单变化,而异步操作或复杂场景可选用侦听器。Vue 3 中,`watchEffect` 减少了部分侦听场景的复杂性。总之,它们用于组件内部响应路由变化,而非直接处理路由逻辑。
11 4
|
11天前
|
资源调度 JavaScript 前端开发
【vue】vue中的路由vue-router,vue-cli脚手架详细使用教程
【vue】vue中的路由vue-router,vue-cli脚手架详细使用教程
|
11天前
|
JavaScript Go
Vue路由跳转及路由传参
Vue路由跳转及路由传参
|
15天前
|
JavaScript 前端开发
vue3+ts+element home页面侧边栏+头部组件+路由组件组合页面教程
这是一个Vue.js组件代码示例,展示了带有侧边栏导航和面包屑导航的布局。模板中使用Element Plus组件库,包含可折叠的侧边栏,其中左侧有 Logo 和导航列表,右侧显示更具体的子菜单。`asideDisplay`控制侧边栏宽度。在`script`部分,使用Vue的响应式数据和生命周期钩子初始化路由相关数据,并从localStorage恢复状态。样式部分定义了组件的颜色、尺寸和布局。
19 1
|
1天前
|
存储 JavaScript
Vue当前时间与接口返回时间的判断
Vue当前时间与接口返回时间的判断
7 0
|
1天前
|
JavaScript
vue生成动态表单
vue生成动态表单
6 0
|
1天前
|
JavaScript 前端开发
Vue生成Canvas二维码
Vue生成Canvas二维码
6 0