zoukankan      html  css  js  c++  java
  • 写给后端同学的vue

    文章内,图片很多,占据了一定的篇幅。有写后台的哥们说,vue怎么写,怎么新建一个vue项目,然后我想了想,觉得写一个面向后台同学的vue教程也是有必要,文章中几乎没讲css和vue细节处理的相关内容,减少接受不必要的信息量,降低vue的学习成本。如果有不清楚的地方,可以私信联系我,有不对不合理之处,敬请指出!我是迩伶贰!

    安装vue-cli 脚手架

    1. 安装nodejs环境

    2. 安装vue-cli系列工具

    • npm install -g @vue/cli
    • npm install -g @vue/cli-service-global

    3. vue create hello-world // 用vue 初始化hello-world 项目

    3.1 vue create hello-world
    3.2 跑起项目 npm run serve

    很多后端同学的用的编辑器是 idea, 我这里也用idea演示这个,细节之处不是本文的重点,可查看 idea创建vue项目
    打开刚才初始化后的项目

    配置启动脚本,相对于配置java 的脚本要简单的多

    启动:

    访问地址

    3.3 项目目录介绍:

    • node_modules , 项目依赖的模块包,我们需要的模块包都会下载到这个目录下,我们开发时不用管
    • public  静态文件放的位置,放一下大的静态文件
    • src 项目的源文件
      • assets 小的静态文件
      • components 组件,一些公用的组件,比如登录框,输入组件等
      • APP.vue vue项目的根组件
      • main.js 项目的主入口文件,一些需要的基本的js css 可在这里引入
    • package.json 项目依赖、介绍、基本配置等的清单文件,我们只需要看,scripts 里面的执行命令即可, 比如serve ->启动, build -> 构建打包
    • 其他 项目运行配置文件,可忽略

    Tips:上面的内容了解即可,可不用深入,继续往下添加页面路由

    4. 增加路由vue-router

    4.1 安装路由 npm install vue-router -S


    使用

    4.2 在项目文件夹下新建router.js
    4.3 写入代码
    import Vue from 'vue';
    import Router from 'vue-router';
    import HelloWorld from './components/HelloWorld';
    
    Vue.use(Router);
    
    export default  new Router({
        mode:'history',
        routes: [
            {
                path: '/helloworld',
                name: 'HelloWorld',
                component: HelloWorld
            }
        ]
    })
    
    4.4. 新建page文件夹,文件夹下面的都是为页面 .vue文件

    4.5 修改router.js
    import Vue from 'vue';
    import Router from 'vue-router';
    import HelloWorld from './components/HelloWorld';
    import Index from './page/index';
    import List from './page/list';
    
    Vue.use(Router);
    
    export default  new Router({
        mode:'history',
        routes: [
            {
                path: '/helloworld',
                name: 'HelloWorld',
                component: HelloWorld
            },
            {
                path: '/index',
                name: 'Index',
                component: Index
            },
            {
                path: '/list',
                name: 'List',
                component: List
            },
        ]
    })
    
    4.6 修改入口main.js
    import Vue from 'vue'
    import App from './App.vue'
    import router from './router';
    
    Vue.config.productionTip = false
    
    new Vue({
        router,
        render: h => h(App),
    }).$mount('#app')
    
    
    

    访问路由:

    5. 增加axios, http请求库 (https://www.kancloud.cn/yunye/axios/234845)

    5.1 安装库 axios , npm install axios -S
    5.2 使用

    以上面的list.vue 文件为例:

    <template>
        <div>
            <h3>这是一个list 页面</h3>
            <ul>
    
                <li>
                    <router-link to="/index">Index</router-link>
                </li>
            </ul>
    
            <h3>下面是axios请求到到数据</h3>
            <ul v-if="userList.length">
                <li v-for="item in userList" :key="item.id">
                    姓名:{{item.name}}
                </li>
            </ul>
    
            <ul v-if="!userList.length">
                loading....
            </ul>
        </div>
    </template>
    <script>
        import axios from 'axios';
        export default {
            name: "Index",
            data(){
                return {
                    userList: []
                }
            },
            created () {
                axios('http://localhost:4000/get/alluser')
                    .then(res => {
                        this.userList = res.data.users;
                    })
            }
        }
    </script>
    <style scoped>
        ul li {
            list-style: none;
            font-size: 16px;
        }
    </style>
    

    6. 增加脚手架可配置文件 vue.config.js

    设置接口的跨域,vue-cli 启动的服务端口等

    module.exports = {
        devServer: {
            port: 8090,
            proxy: 'http://localhost:4000'
        }
    }
    

    7. 打包项目

    7.1 执行命令 npm run build

    7.2 构建结果

    会在项目目录下生成dist 文件夹,文件夹下的文件就是我们需要的静态文件

    我们把打包后的静态文件扔进服务器即可,或者我们用ngxix 部署静态文件,index.html 就是最终指向的入口文件。
    关于nginx的部署,需要的话可以参考: nginx会多少

    10. 补充,使用第三方ui库

    关于vue 实际操作可以参考我这篇笔记,在不定时更新中 (vue的实际应用)[https://www.cnblogs.com/adouwt/p/7911639.html]
    整理不容易,转载请注明出处,我是迩伶贰,谢谢阅读!

  • 相关阅读:
    问题——虚拟机连接,查本地DNS,查软件位置,payload生成,检测注册表变化
    nmap命令解释
    SMB扫描,SMTP扫描
    操作系统识别,SNMP扫描
    服务扫描——查询banner信息,服务识别
    nmap之扫描端口(附加hping3隐藏扫描)
    scapy简单用法——四层发现
    转载 界面组装器模式
    设计模式=外观模式
    如何进行自动化测试和手工测试
  • 原文地址:https://www.cnblogs.com/adouwt/p/11207143.html
Copyright © 2011-2022 走看看