今日内容
1 创建vue项目
| |
| |
| |
| |
| |
| |
| -node :等同于 python |
| -npm :等同于 pip |
| |
| |
| cnpm install -g @vue/cli |
| |
| |
| |
| |
| |
| -第一种:使用命令行 |
| vue create 项目名,步骤如下图 |
| -第二种:使用图形化界面创建项目 |
| vue ui |
| |
| |
| |
| -配置使用pycharm运行vue项目 |
| -方式一:在terminal中敲 npm run serve |
| -方式二:配置,点击绿色箭头 |
| |
| |
| |
| |
| npm install -g cnpm --registry=https://registry.npm.taobao.org |
| 以后使用cnpm代替npm,速度快 |




3 vue项目目录结构
| myfirstvue |
| -node_modules |
| -public |
| -favicon.ico |
| -index.html |
| -src |
| assets |
| components |
| store |
| router |
| views |
| App.vue |
| main.js |
| .gitignore |
| babel.config.js |
| jsconfig.json |
| package.json |
| package-lock.json |
| README.md |
| vue.config.js |
| |
| |
| |
| |
| |
4 es6导入导出语法
| |
| |
| |
| export default 对象 |
| |
| import 起个名字 from 'js文件' |
| import {add,name,} from 'js文件' |
| import * as 起个名字 from 'js文件' |
| |
| "如js文件名为index就不需要写到js文件名" |
| |
| |
| |
| |
| |
| |
| -es6之前,没有模块化,不能写包,第三方requirejs支持模块化,导入导出 |
| -es6加入了导入导出 |
5 单页面组件写法
| |
| |
| |
| |
| |
| |
| <template> |
| </template> |
| |
| <script> |
| </script> |
| |
| <style> |
| </style> |
| """ |
| |
| """ |
| |
5.1 案例
<template>
<div class="home">
<img alt="Vue logo" src="../assets/logo.png">
<h1>{{ name }} is handsome</h1>
<button @click="handleClick">点我看美女</button>
</div>
</template>
<script>
export default {
name: 'HomeView',
data() {
return {
name: '李清照'
}
},
methods: {
handleClick() {
alert('美女')
}
}
}
</script>
<style scoped> 只在当前组件中生效
h1{
background-color: pink;
font-size: 90px;
}
</style>
vue项目的开发流程看视频
6 vue-router路由使用
| |
| |
| -第一步:根组件中写:App.vue |
| <template> |
| <div id="app"> |
| <router-view/> |
| </div> |
| </template> |
| -第二步:配置路由--》router-->index.js中配置--》这样配好,在浏览器输入order,就看到OrderView这个组件了 |
| -写了新页面组件后,在index.js中配置 |
| const routes = [ |
| { |
| path: '/order', |
| name: 'order', |
| component: OrderView, |
| } |
| ] |
| |
| -第三步:在页面中有个按钮,点击,跳转到某个组件上 |
| -方式一:在html中写 |
| <router-link :to="toUrl"><button @click="handleClick">订单</button></router-link> |
| -方式二:在js中写 |
| this.$router.push('/') |
| -不能跳转第三方路径 |
| |
| |
7 vue项目中使用bootstrap,jquery,elementui
| |
| |
| |
| |
| -第一步:安装 |
| cnpm i element-ui -S |
| |
| -第二步:在main.js中配置 |
| import ElementUI from 'element-ui'; |
| import 'element-ui/lib/theme-chalk/index.css'; |
| Vue.use(ElementUI); |
| -第四步:去官网,复制,粘贴,调整大小即可 |
| |
| |
| -第一步:安装 |
| cnpm install jquery -S |
| cnpm install bootstrap@3 -S |
| -第二步bootstrap配置 -->main.js |
| import 'bootstrap' |
| import 'bootstrap/dist/css/bootstrap.min.css' |
| |
| -第三步:配置jquery --> vue.config.js |
| const webpack = require("webpack"); |
| const { defineConfig } = require('@vue/cli-service') |
| module.exports = defineConfig({ |
| transpileDependencies: true, |
| configureWebpack: { |
| plugins: [ |
| new webpack.ProvidePlugin({ |
| $: "jquery", |
| jQuery: "jquery", |
| "window.jQuery": "jquery", |
| "window.$": "jquery", |
| Popper: ["popper.js", "default"] |
| }) |
| ] |
| } |
| }) |
| |
| const webpack = require("webpack"); |
| module.exports = { |
| configureWebpack: { |
| plugins: [ |
| new webpack.ProvidePlugin({ |
| $: "jquery", |
| jQuery: "jquery", |
| "window.jQuery": "jquery", |
| "window.$": "jquery", |
| Popper: ["popper.js", "default"] |
| }) |
| ] |
| } |
| }; |
配置axios与vue-cookies
python```
| |
| cnpm install axios -S |
| |
| |
| |
| import axios from 'axios' |
| Vue.prototype.$axios=axios |
| |
| |
| |
| npm install vue-cookies -S |
| |
| |
| |
| import cookies from 'vue-cookies' |
| Vue.prototype.$cookies=cookies |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」