Vue项目架构详解

本文详细介绍了Vue项目的package.json文件中的scripts配置项,包括不同环境下的启动命令与打包命令的具体用法,以及如何通过npm start命令来运行Vue项目。

1 package.json文件

1.1 scripts 对象

  "scripts": {
    "start": "npm run dev",
    "dev": "vue-cli-service serve",
    "prod": "vue-cli-service serve --mode production",
    "test": "vue-cli-service serve --mode test"  // 三个环境下的启动命令,也可以写成serve:test这种形式,打包命令也一样  
    "build:prod": "vue-cli-service build",
    "build:stage": "vue-cli-service build --mode staging",
    "preview": "node build/index.js --preview",
    "lint": "eslint --ext .js,.vue src"
  }

1.1.1 npm start

  1. 帮助文档
    命令行中运行 npm help start ,打开该命令的帮助内容网页。
    其实里面已经说的很清楚了:
    Description This runs an arbitrary command specified in the package's "start" property of its "scripts" object. If no "start" property is specified on the "scripts" object, it will run node server.js.

  2. 详解

    1. 该命令需要在vue项目的工作目录下运行。比如,我的 vue 项目的工作目录为 C:\devlelop\ws\vue-project\,则应该在该工作目录下运行该命令。
    2. 它可以运行任意的命令,该命令是由 package.json 文件中的 scripts 对象中的 start 属性值指定。
    3. 如果没有 start 属性,则会转而执行这个命令 node server.js
    4. 该命令比较特殊!scripts 对象中,只有这个命令不需要加 run(当然也可以加 run),其他的都需要加 run ,比如 npm run build:prod

1.1.2 npm run dev

"dev": "vue-cli-service serve"

该命令省略了 mode 参数,因为如果不写 mode 参数,则它默认是 development,所以以上命令相当于 "dev": "vue-cli-service serve --mode development"

### Spring Boot与Vue组合的项目架构设计及实现详解 #### 一、总体概述 为了帮助理解Spring Boot与Vue组合项目的结构,可以将其分为前后端两大部分。前端主要负责页面展示和交互逻辑;而后端则专注于业务逻辑处理和服务提供。 #### 二、后端(Spring Boot部分) ##### 1. 基础包布局 在`src/main/java/com/example/project/`路径下存在多个子目录用于区分不同层次的功能组件: - `controller`: 定义RESTful API接口,接收来自客户端请求并调用相应服务完成数据交换[^1]。 - `service`: 封装核心业务流程,包括但不限于计算、查询以及与其他系统的通信等功能。 - `repository`: 负责持久化对象的操作,即通过JPA或其他ORM框架管理数据库中的记录[^2]。 - `entity`: 存储实体类定义,这些类映射到关系型数据库表内的字段。 ##### 2. 配置资源 位于`src/main/resources/application.yml`处保存着整个应用程序运行所需的各种参数设置,比如连接池配置、安全认证方式等重要信息。 ```yaml server: port: 8080 spring: datasource: url: jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC username: root password: 123456 mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl ``` #### 三、前端(Vue.js部分) ##### 1. 初始化工程环境 利用vue-cli工具快速建立一个新的单页应用(SPA),并通过安装必要的依赖库如vue-router来支持页面导航功能[^3]。 ```bash npm install -g @vue/cli vue create my-project cd my-project npm install vue-router --save ``` ##### 2. 组件开发模式 采用基于组件的设计理念构建视图界面,每个独立UI单元都被封装成可重用的小部件形式,便于维护的同时也提高了代码质量。 #### 四、前后端联调机制 针对跨域资源共享(CORS)难题,在服务器端需适当调整响应头策略允许特定源发起HTTP请求;而在浏览器侧可通过代理转发的方式绕过同源政策限制。 ```javascript // 在main.js中添加如下代码片段解决CORS问题 import axios from 'axios' axios.defaults.withCredentials = true; axios.interceptors.request.use(config => { config.headers['Access-Control-Allow-Origin'] = '*'; return config; }); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值