zoukankan      html  css  js  c++  java
  • 创建vue项目+总结使用(跨域问题+vue 创建)

    创建vue项目:

    -安装node.js
            -vue脚手架
            -vue create 项目名字
        pycharm开发vue项目
            -需要安装vue.js插件
                -setting--->plugins--->左下方install---->去搜索---->下载--->重启
            -运行vue项目
                -editconfigration--->+--->npm--->run serve 
                
        vue目录结构:
            -node_modules:项目依赖(以后项目要传到git上,这个不能传)
            -publish--->index.html  是总页面
            -src :项目
                -assets:静态资源
                -components:组件
                -views:视图组件
                -APP.vue:根组件
                -main.js :总的入口js
                -router.js :路由相关,所有路由的配置,在这里面
                -store.js  :vuex状态管理器
            -package.json:项目的依赖,npm install 是根据它来安装依赖的,如果往git上传,它也需要传上去    
        每个组件会有三部分:
            -template
            -style
            -script
        新建组件:
            -创建一个组件
            -去路由做配置:
            import Course from './views/Course.vue'
                {
                  path: '/course',
                  name: 'course',
                  component: Course
                }
            -使用:
                <router-link to="/course">专题课程</router-link>
        显示数据:
            -script中:
                  export default {
                    data:function () {
                        return{
                        
                            course:['python','linux'],
                            aa:'我是aa'
                        }
                    }
        方法绑定:
            <button @click="init">点我</button>
            
            -script
                methods: {
                    init: function () {
                        alert('111')
                    }
                }
        vue中的ajax:
            -axios
            -安装:npm install axios
            -使用:
                -先在main中配置:
                    import axios from 'axios'
                    Vue.prototype.$http=axios
                -在组件中:
                    this.$http.request().then().catch()
                    this.$http.request({
                        url:请求的地址
                        method:请求方式
                    }).then(function(response){
                        ....函数回调处理
                    })
                -注意:
                    this需要在上面重新赋值给一个变量
                    请求成功函数内部:
                        _this.course=response.data
                        http://127.0.0.1:8000/course/?format=json,这样可以拿到json的格式数据,否则拿到的是一个好看的页面

    vue项目中启动命令:npm run serve
    cmd下载vue命令:
    cd /d 文件路径
    vue create luffy_girl

    总结使用(跨域问题+vue 创建)

    -跨域问题:
            -浏览器同源策略---jsonp解决跨域问题
            -cors:跨域资源共享,服务端的技术
            -简单请求
                -发一次请求
            -非简单请求
                -发两次第一次是OPTIONS,预检请求
            -如何区分:
                -请求方式:
                    HEAD
                    GET
                    POST
                -HTTP的头信息不超出以下几种字段:
                
                    Accept
                    Accept-Language
                    Content-Language
                    Last-Event-ID                Content-Type:只限于三个值application/x-www-form-urlencoded、multipart/form-data、text/plain
            -处理:
                from django.utils.deprecation import MiddlewareMixin
                class CorsMiddleWare(MiddlewareMixin):
                    def process_response(self,request,response):
                        if request.method=="OPTIONS":
                            #可以加*
                            response["Access-Control-Allow-Headers"]="Content-Type,token"
                        response["Access-Control-Allow-Origin"] = "http://localhost:8080"
                        return response
    
                        
        -vue 创建:
        -目录结构:
            -src
            -package.json
        -创建页面组件:
            -都有三部分
            -创建路由
            -用路由跳转
                <router-link to="/course">专题课程</router-link>
                
                
        -如何使用bootstrap样式:
            -cdn引入
            -本地引入,注意路径问题 
        -与后台交互:(必须要掌握)
            -axios
                -安装:npm install axios
                -配置:
                    import axios from 'axios'
                    //要把axios放到一个全局变量中
                    //把axios赋给了$http这个变量
                    Vue.prototype.$http=axios
                -使用:
                    this.$http.request({
                        url:'路径',
                        method:'get',
                        data:
                    }).then(function (response){
                            真实的数据=response.data
                        })
                        
        -在组件的script中:
            export default {
                data:function () {
                    return {
                        course: ['python', 'linux'],
                        aa: '我是aa'
                    }
    
            },
            methods:{
                test:function (可以写参数){
                    
                },
                }
            
            }
  • 相关阅读:
    Core Data入门
    web前端开发与iOS终端开发的异同
    Blocks编程
    ARC下循环引用的问题
    小项目
    error: /Users/**/Documents/workspace/***/clean_right_normal.png: No such file or directory
    修复NSTextAlignmentCenter引起的警告
    Implicit conversion loses integer precision: 'long long' to 'NSUInteger' (aka 'unsigned int')
    手势相关函数
    implicit declaration of function setxattr is invalid in c99
  • 原文地址:https://www.cnblogs.com/cao123/p/10166754.html
Copyright © 2011-2022 走看看