Vue Web开发(一)

1. 环境配置

1.1. 开发工具下载

1.1.1. HbuilderX

官网地址https://uniapp.dcloud.net.cn/

1.1.2. Visual Studio Code

官网地址https://code.visualstudio.com/Download

1.1.3. Node环境

官网地址https://nodejs.cn/

正常软件安装下载即可,打开检cmd过安装包安装node环境会自带npm工具。

1.1.4. 安装cnpm

主要用来代替npm,因为npm下载速度过慢。

javascript 复制代码
npm install -g cnpm -registry=https://registry.npm.taobao.org

1.1.5. 安装cnpm

javascript 复制代码
npm install -g yarn


1.1.6. 安装 vue-cli 脚手架构建工具

vue-cli 提供一个官方命令行工具,可用于快速搭建大型单页应用。

(1)输入命令:cnpm install -g @vue/cli

(2)验证是否安装成功

注意是大写V,这里是脚手架版本,不是Vue版本,跟Vue2、Vue3无关。

1.2. 创建项目

(1) vue create 项目名称(不能有大写字符可以使用中划线或下划线)

(2) 选择项目类型

成功后出现以下画面,我们选择Vue2。

项目创建完成后,会生成这些文件。package.json会存储我们下载的所有插件。

此处才是真正的Vue版本,cmd看到的是脚手架版本。

1.3. Element ui

Element ui 官方文档:Element - The world's most popular Vue UI framework

1.3.1. 全局引入Element ui

安装npm i element-ui -S,-S等价于--save--dev

--save:将保存配置信息到pacjage.json。默认为dependencies节点中。

--dev:将保存配置信息devDependencies节点中。

在mian.js入口文件中引入,import引入Element ui和样式,并Vue.use全局使用。

javascript 复制代码
main.js文件
import Vue from 'vue';
import App from './App.vue';
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);
new Vue({
  el: '#app',
  render: h => h(App)
});

1.3.2. 按需引入Element ui


1.4. Vue路由使用

引入npm i [email protected],这里使用指定版本。

在根目录下新建router文件夹,router文件夹下新建router.js文件,所有路由逻辑待会编写在这个router.js文件。

首先引入vue和vue-router,此处注意大小写!!!new一个VueRouter并用router接收,这样做是为了方便向外暴露router,进行修改配置mode为history,以数组的形式传入路由相关信息,用routes接收。

javascript 复制代码
router/router.js文件
import Vue from 'vue';
// 注意这里模块是小写vue
import VueRouter from 'vue-router';
import Home from '../view/Home.vue';
Vue.use(VueRouter)
// routes是一个数组
import Vue from 'vue';
// 注意这里模块是小写vue
import VueRouter from 'vue-router';
Vue.use(VueRouter)
// routes是一个数组!!!!
const routes = [
    {
        path:'/',
        name:'Home',
        component:()=>import('../view/Home')//这个Home.vue页面待会会新建
    }
]
const router = new VueRouter({
    mode:'history',
    routes
})
export default router;

在根目录下新建view文件夹,view文件夹下新建Home.vue页面。

javascript 复制代码
Home.vue文件
<template>
    <div>这是Home页面</div>
</template>
<script>
    export default{
        name:'Home',
        data(){
            return{}
        }
    }
</script>

在App.vue中写入,Home页面会展示过来,当然不仅仅是Home页面,新建其他页面绑定路由都可以。将vue原有的样式全部删除,后面会有影响。

javascript 复制代码
//App.vue文件
<template>
  <div id="app">
    <!-- router-view会展示页面内容 -->
    <router-view></router-view>
  </div>
</template>
<script>
//记得引入
import HeeloWorld from '../components/HelloWorld.vue'
export default {
  name: 'App',
  components: {
    HelloWorld
  }
}
</script>
<style>
#app {
  /* 这里非常重要,这里将vue原有的样式全部删除,后面会有影响 */
  height: 100vh;
}
</style>

1.5. 路由切换

(1)router.js文件,添加/User路由,选择正确路径。

javascript 复制代码
//router/router.js文件的routes数组
import Vue from 'vue';
// 注意这里模块是小写vue
import VueRouter from 'vue-router';
import Home from '../view/Home.vue';
Vue.use(VueRouter)
// routes是一个数组
const routes = [
    {
        path: '/',
        name: 'Home',
        component: Home
    },
    {
        path: '/user',
        name: 'User',
        component: () => import('../view/User')
    }
]
const router = new VueRouter({
    mode: 'history',
    routes
})
export default router;

(2)改写main.js文件

javascript 复制代码
//main.js
import Vue from 'vue'
import App from './App.vue'
import 'element-ui/lib/theme-chalk/index.css';
//ElementUI全局引入
// import ElementUI from 'element-ui';
// Vue.use(ElementUI)
//ElementUI按需引入
import Button from 'element-ui';
Vue.use(Button)
import router from '../router/router.js';
Vue.config.productionTip = false
new Vue({
	router,
    render: h => h(App),
}).$mount('#app')

(3) 改写HelloWorld.vue文件

javascript 复制代码
//Helloworld.vue文件的template标签内容。
<template>
  <div class="hello">
    <!-- <el-row> -->
      <router-link to='/'>
          <el-button>Home按钮</el-button>
      </router-link>
      <router-link to='/user'>
          <el-button type="primary">User按钮</el-button>
      </router-link>
    <!-- </el-row> -->
  </div>
</template>
<script>
export default {
  name: 'HelloWorld',
  props: {
    msg: String
  }
}
</script>

(4)在App.vue中引入HelloWorld.vue组件。

javascript 复制代码
//App.vue文件
<template>
  <div id="app">
    <img alt="Vue logo" src="./assets/logo.png">
    <HelloWorld msg="Welcome to Your Vue.js App" />
    <router-view></router-view>
  </div>
</template>
<script>
  import HelloWorld from './components/HelloWorld.vue'
  export default {
    name: 'App',
    components: {
      HelloWorld
    }
  }
</script>
<style>
  #app {
  height: 100vh;
  }
</style>

(5)在view文件夹下新建User.vue测试所用。

javascript 复制代码
//User.vue文件
<template>
    <div>网上User页面</div>
</template>
<script>
    export default{
        name:'User',
        data(){
            return{}
        }
    }
</script>

可以通过两个按钮切换路由、切换页面。

源码下载

相关推荐
90后的晨仔10 分钟前
ArkTS 语言中的number和Number区别是什么?
前端·harmonyos
菜鸡爱上编程22 分钟前
React16,17,18,19更新对比
前端·javascript·reactjs·react
我命由我1234529 分钟前
VSCode - VSCode 转换英文字母的大小写
开发语言·javascript·ide·vscode·编辑器·html·软件工具
陈龙龙的陈龙龙1 小时前
uniapp 金额处理组件
前端·javascript·uni-app
我命由我123451 小时前
VSCode - VSCode 让未被编辑的标签页不被自动关闭
前端·javascript·ide·vscode·编辑器·html·js
Jimmy1 小时前
CSS 中操作移动,缩放和旋转
前端·css·react.js
layman05281 小时前
openeuler 虚拟机:Nginx 日志分析脚本
前端·javascript·nginx
curdcv_po2 小时前
ts 非空 断言, 后缀加感叹号!,有话要说!!!
前端
烛阴2 小时前
快速上手Axios:前端开发者必备技能
前端·javascript
究极无敌暴龙战神X2 小时前
Vite中定义@软链接
前端