如何使用vue组件搭建网页并打包发布

vue组件化项目搭建及编译打包发布

  • 引言
  • 开发环境
    • 开发环境介绍
    • 开发环境安装
  • 使用模板创建项目
  • 编译及打包发布

引言

最近开始学习Vue,Vue 是一个前端框架,特点是数据绑定和组件化。网上很多教程,数据绑定和组件学习起来也都不困难,但是当我学习到组件化的时候,开始有点懵逼了。

组件化指的是页面上的任何内容都可以保存为.vue的单独文件,里面包含了该组件的html结构,js脚本和css样式,像乐高积木一样通过互相引用而组装起来。概念其实并不难理解,网上也很多教程能够让我们搭建起一个简单的应用,甚至修改模板文件,最后使用npm run dev让我们的应用运行起来。

这就让我有点懵逼了,vue是前端js,学习的时候引入vue.js就可以,不应该依赖这样或那样的运行环境,总不能让我开发好了应用后再去服务器上安装一堆运行环境,然后再输入npm run dev让程序跑起来吧。

所以最后还是去认认真真的读了官方文档和新手入门,vue的组件化需要编译打包成js,这样就瞬间释然了。

开发环境

开发环境介绍

推荐的开发环境有Homebrew、Node.js、npm、webpack、vue-cli、Atom,当初安装网上教程搭建vue应用时也是一路安装过去,很多东西都不是很了解,其实也不用了解太多 -。- (我用的是Windows,目前只用到了下面这些开发环境。关于如何搭建开发环境和vue项目网上很多教程,这里就不详细说了,只做个简单记录)

Node.js :JavaScript的运行环境,这个是基础
npm :Nodejs下的包管理器,类似于Mac下的Homebrew,webpack和vue-cli都是通过npm来安装和更新的
webpack:Vue的组件都是以 .vue 形式存在的单文件,无法被客户端的浏览器解析,用于翻译和打包成 .js 文件
vue-cli :用来生成模板的vue工程

开发环境安装

  • 安装 Node.js
    首先从官网下载并安装Node.js,一路 next 就好。
    安装好之后在命令行工具中输入 node -v 查看Node.js的版本,如果提示错误则需要手动添加环境变量(自行百度)。
  • 安装 npm 包管理器
    npm是集成在Node.js中的,输入 npm - v 查看npm版本信息
  • 安装 cnpm
    由于npm有些资源被屏蔽的问题,所以需要安装国内镜像cnpm
    输入 npm install -g cnpm –registry=http://registry.npm.taobao.org 等待安装
  • 安装 vue-cli 构建工具
    输入 npm install vue-cli -g 等待安装
  • 安装 webpack 编译打包工具
    输入 cnpm install webpack- g 等待安装,这里使用了国内镜像安装
  • 查看安装信息
    输入 npm list -g 查看全局安装包,
    npm list vue-cli -g 查看vue-cli安装包,如果显示 -- (empty) 则表示没有此包

使用模板创建项目

使用 cd 目录路径 转到存放项目的目录下,使用 vue init webpackvue init webpack-simple 创建工程

D:\wwwroot>vue init webpack-simple 工程名字<工程名字不能用中文>或者创建 vue1.0 的项目
D:\wwwroot>vue init webpack-simple#1.0 工程名字<工程名字不能用中文>

接下来会是一些初始化的设置,不清除什么意思的可以一路回车默认下去(我现在也只能搞懂一部分),官方有一些解释

Target directory exists. Continue? (Y/n)直接回车默认(然后会下载vue2.0模板,这里可能需要连代理)
Project name (vue-test)直接回车默认
Project description (A Vue.js project) 直接回车默认
Author 写你自己的名字

全部确认好之后会开始下载并生成模板工程,完成之后会出现提示信息,告诉你接下来该怎么做,这里分两种情况
我们在创建工程的时候提到过两种命令 vue init webpackvue init webpack-simple 前者是完全的,后者是简单的

  • vue init webpack
    提示信息如下,意思是转到vue目录,输入 npm run dev 运行程序
To get started:cd vuenpm run devDocumentation can be found at https://vuejs-templates.github.io/webpack
  • vue init webpack-simple
    提示信息如下,意思是转到vue-simple目录,输入 npm install 安装依赖源,输入 npm run dev 运行程序
   To get started:cd vue-simplenpm installnpm run dev

最后运行npm run dev,编译过程和结果两者也略有不同,大家可以自己去比较一下,不过最终实现的效果是一样的,如下图
在这里插入图片描述
至此,大家就可以自己去测试和定制各种组件了,使用vue组件搭建网页应用

编译及打包发布

输入 npm run build 进行打包发布,编译完成后会在项目目录下生成 dist 文件夹,
根据创建项目命令不同( vue init webpackvue init webpack-simple ),编译后的文件组成形式也不一样

  • 使用 vue init webpack 创建的项目,dist文件夹中包含 index.html、 js 和 css文件
  • 使用 vue init webpack-simple 创建的项目,dist文件夹中只有 build.js,index.html 文件为项目目录下的index.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/281359.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MyBatis 分页插件 PageHelper

插件官网 简介&#xff1a; 支持常见的 12 种数据库。Oracle,MySql,MariaDB,SQLite,DB2,PostgreSQL,SqlServer 等&#xff1b; 支持常见的RowBounds(PageRowBounds)&#xff0c;PageHelper.startPage 方法调用&#xff0c;Mapper 接口参数调用&#xff1b; 获取maven配置 示例&…

Facebook揭秘其应用测试平台,并开源核心技术

本周&#xff0c;Facebook让一群记者参观了它位于俄勒冈州普赖恩维尔市的数据中心&#xff0c;在这个过程中也展示了他们的一个移动应用测试实验室&#xff0c;用来测试Facebook app、 Messenger 和Instagram。 目前 这个实验室总共含有60个机架&#xff0c;每个机架上放置32台…

责任链模式 职责链模式 Chain of Responsibility Pattern 行为型 设计模式(十七)

责任链模式&#xff08;Chain of Responsibility Pattern&#xff09;职责链模式意图 使多个对象都有机会处理请求&#xff0c;从而避免请求的发送者和接受者之间的耦合关系将这些对象连接成一条链&#xff0c;并沿着这条链传递请求&#xff0c;直到有一个对象处理它为止。责任…

YOLOv7 在 ML.NET 中使用 ONNX 检测对象

本文介绍如何在 ML.NET 中使用 YOLOv7 的 ONNX 模型来检测图像中的对象。什么是 YOLOYOLO&#xff08;You Only Look Once&#xff09;是一种先进的实时目标检测系统。它是一个在COCO数据集上预训练的物体检测架构和模型系列&#xff0c;其版本也是在不断优化更新。2022年7月&a…

Vue中render: h = h(App)的含义

原文地址&#xff1a;Explanation for render: h > h(App) please 翻译如下&#xff1a; render: h > h(App) 是下面内容的缩写&#xff1a; render: function (createElement) {return createElement(App); }进一步缩写为(ES6 语法)&#xff1a; render (createElem…

NppFTP小插件的使用

大家在Linux系统中配置运行环境时&#xff0c;一定会遇到相关配置文件的修改&#xff0c;虽说在Linux系统中可以使用vi,vim的命令进行文本编辑&#xff0c;但是操作起来还是没有在Windows系统中用的爽&#xff0c;特别是操作大文本量的文件时。Notepad里提供了一个小插件&#…

『实战』使用Excel催化剂二维码功能批量生成带不同图案二维码。

熟悉Excel催化剂的老读者都知道&#xff0c;每逢图书大促&#xff0c;笔者都会向出版社申请优惠码优惠券来惠及广大粉丝。当然公众号上帮出版社推荐图书&#xff0c;会有佣金回报&#xff0c;这也是笔者唯一能接受的推广方式。公众号自创立以来&#xff0c;没有接过软文&#x…

springboot ElasticSearch 简单的全文检索高亮

前阵子和张三丰聊天提到了es。这次正好有机会学习并使用 首先引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-elasticsearch</artifactId> </dependency> 配置文件 spring.data.…

JavaScriptSerializer类 对象序列化为JSON,JSON反序列化为对象

JavaScriptSerializer 类由异步通信层内部使用&#xff0c;用于序列化和反序列化在浏览器和 Web 服务器之间传递的数据。说白了就是能够直接将一个C#对象传送到前台页面成为javascript对象。要添加System.Web.Extensions.dll的引用。该类位于System.Web.Script.Serialization命…

nodejs 实践:express 最佳实践(六) express 自省获得所有的路由

nodejs 实践&#xff1a;express 最佳实践(六) express 自省获得所有的路由 某些情况下&#xff0c;你需要知道你的应用有多少路由&#xff0c;这在 express 中没有方法可以。因此我这边曲线了一下&#xff0c;做成了一个函数进行处理。遍历所有的方法进行处理。 代码 const _ …

使用vue组件搭建网页应用

使用vue组件搭建网页应用搭建开发环境开发组件搭建开发环境 搭建一个 vue 项目最快的方式就是使用 vue cli 脚手架进行初始化&#xff0c;包含了所有完整的依赖及开发配置。 首先全局安装 vue cli&#xff0c;打开 cmd 命令提示符 或者 power shell&#xff0c;输入以下命令&…

重新整理 .net core 实践篇 —linux上排查问题实用工具 [外篇]

前言介绍下面几个工具:Lldbcreatedumpdotnet-dumpdotnet-gcdumpdotnet-symbolProcdump该文的前置篇为:https://www.cnblogs.com/aoximin/p/16839812.html献给初学者&#xff0c;这篇就只介绍下看下日志和lldb&#xff0c;毕竟东西太多了。正文我以官网的例子作为演示&#xff1…

Office 365离线安装

Office 365除了可以在线安装外&#xff0c;还可以进行离线安装&#xff0c;但激活还是需要连接互联网的哟首先下载Office部署工具https://www.microsoft.com/en-us/download/details.aspx?id49117 下载文件后&#xff0c;运行自解压缩可执行文件&#xff0c;其中包含 Office 部…

reduceByKey和groupByKey区别与用法

2019独角兽企业重金招聘Python工程师标准>>> 在Spar看中&#xff0c;我们知道一切的操作都是基于RDD的。在使用中&#xff0c;RDD有一种非常特殊也是非常实用的format——pair RDD&#xff0c;即RDD的每一行是&#xff08;key, value&#xff09;的格式。这种格式很…

python自动化测试-D6-学习笔记之一(常用模块补充datetime模块)

# datetime 模块import datetimeprint(datetime.datetime.today()) #当前日期&#xff0c;到秒 打印结果&#xff1a;2018-01-21 10:23:46.034410print(datetime.datetime.now()) # 当前日期&#xff0c;到秒 打印结果&#xff1a;2018-01-21 10:23:46.034410print(datetime.d…

Vue如何在data中正确引入图片路径

方法一&#xff1a;将图片资源放入项目 /static 目录下&#xff0c;使用绝对或相对路径引用即可 // 文件结构 |-- src | |-- components | | |-- banner.vue |-- static | |-- images | | |-- pic.jpg<template><div id"banner"><img :s…

软件工程的第一性原理丨SmartIDE

作者&#xff1a;徐磊原文地址&#xff1a;https://smartide.cn/zh/blog/2022-1022-software-engineering/徐磊英捷创软科技&#xff08;北京&#xff09;有限公司创始⼈/⾸席架构师 / CEO / SmartIDE开源项⽬创始⼈。微软最有价值专家MVP&#xff0c;微软区域技术总监&#xf…

排序算法之快速排序详解

一、算法介绍 快速排序&#xff1a;快速排序的基本思想是通过一次排序将等待的记录分成两个独立的部分&#xff0c;其中一部分记录的关键字小于另一部分的关键字。C部分的快速排序一直持续到整个序列被排序。 任取一个元素 (如第一个) 为中心提出所有小于它的元素&#xff0c;并…

openstack 中国联盟公开课參会总结

主流趋势 1. openstack defcore 互操作性认证。打通不同的openstack 厂商之间的连接2. 首批OpenStack管理员认证(COA)将于2016年进行3. 混合云应用广泛 Cloud Broker,cascading openstack 云连接器4. DevOps5. 虚拟桌面6. Storage 方面&#xff0c;Ceph和Glusterfs 7. Network…

bzoj1088[SCOI2005]扫雷Mine

1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 4284 Solved: 2552[Submit][Status][Discuss]Description 相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷&#xff0c;要你根据一些信息找出雷来。万圣节到了&#xff0c;“余”人国流…