Django   发布时间:2022-04-10  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Vue+restfulframework示例大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

<div id="cnblogs_posT_Body" class="blogpost-body">

一、vue

vue前端框架:

https://m.taobao.org

创建脚手架:
vue init webpack Vue项目名称
<span style="color: #008000;">#<span style="color: #008000;">记得把route的这个设置为yes,其他的设置为no 比如: Install vue-router? Yes
<span style="color: #000000;">

插件:
axios,发送Ajax请求
vuex,保存所有组件共用的变量
vue-<span style="color: #000000;">cookies,操作cookie

二、流程详细

1、创建脚手架

npm config set registry https://m.taobao.org vue init webpack

2、运行

3、显示组件

>首页

<span style="color: #008000;">#<span style="color: #008000;"> 组件显示的位置

4、写路由

Vue+restfulframework示例

Vue Router Index Login Course Micro News CourseDetail NotFound { { path: name: { path: name: { path: name: { path: name: { path: name: { path: name: { path: name: { path: mode: })
-144ea679045c')">

Vue+restfulframework示例

-144ea679045c" class="cnblogs_code_hide">
 
 {
                       path:                        name:    {
                       path:                        name:    {
                       path:                    
                 
                 
                     {'path':'/course-detail/'+item.id }>{{item.namE}}
                     >首页
     
                 
 s.$route.params.id
                 
                     this.$router.push(                 

注意:

Vue+restfulframework示例

如果不想在url显示#,可以在路由里面加上这样一个参数

mode:

5、写组件

Vue+restfulframework示例

6、发送ajax请求:axios

需要安装axios组件 npm install axios
41916fd-ff69-4d84-8f30-9d263e1260a4')">

Vue+restfulframework示例

41916fd-ff69-4d84-8f30-9d263e1260a4" class="cnblogs_code_hide">
  
       Vue  
      App  
      router  
     
      axios  
     
     Vue.prototype.$axios = 
     Vue.config.productionTip =false
  
  s.$axios.request({
     url: http://127.0.0.1:8000/login/     method:  {
 s.username, password: this.password
      responseType: 
 E) {
      
     that.$router.push(  
 PS:重定向 that.$router.push()

7、vuex:保存所有组件共用的变量

如果想用vuex需要做这么几件事:

  • a、先创建一个文件夹,store----store.js
  • b、要先使用就先导入
  • c、实例化一个对象,并且让别人可以用
  • d、这样每一个组件都可以用username和token了

Vue+restfulframework示例

Vue App router axios store Vue.prototype.$axios = Vue.config.productionTip =false /* eslint-disable no-new */ { el: store, { App }, template: src/store/ Vue Vuex Cookie // username: Cookie.get( token: Cookie.get( // state.username = state.token = Cookie.set(,data.username, Cookie.set(,data.token, state.username = state.token = Cookie.remove( Cookie.remove( })

8、vue-cookies:操作cookie

-cookies

Vue+restfulframework示例

npm install vue- Cookie.get( Cookie.set(, Cookie.remove( src/store/ Vue Vuex Cookie // username: Cookie.get(), token: Cookie.get() // state.username = state.token = Cookie.set(,) Cookie.set(, state.username = state.token = Cookie.remove() Cookie.remove( })

三、代码实现

前端代码:

Vue+restfulframework示例

<span style="color: #0000ff;"&gt;<</span><span style="color: #800000;"&gt;title</span><span style="color: #0000ff;"&gt;></span>s6vue<span style="color: #0000ff;"&gt;</</span><span style="color: #800000;"&gt;title</span><span style="color: #0000ff;"&gt;></span>

<span style="color: #0000ff;"></<span style="color: #800000;">head<span style="color: #0000ff;">>
<span style="color: #0000ff;"><<span style="color: #800000;">body<span style="color: #0000ff;">>
<span style="color: #0000ff;"><<span style="color: #800000;">div <span style="color: #ff0000;">id<span style="color: #0000ff;">="app"<span style="color: #0000ff;">></<span style="color: #800000;">div<span style="color: #0000ff;">>
<span style="color: #008000;">
<span style="color: #0000ff;"></<span style="color: #800000;">body<span style="color: #0000ff;">>
<span style="color: #0000ff;"></<span style="color: #800000;">html<span style="color: #0000ff;">>

Vue+restfulframework示例

Vue.config.productionTip = false

/ eslint-disable no-new /
new Vue({
el: '#app',store,router,components: { App },template: '<span style="color: #0000ff;"><<span style="color: #800000;">App<span style="color: #0000ff;">/><span style="color: #000000;">'
})

Vue+restfulframework示例

<首页 <学位课 <课程 <深科技 <欢迎{{ this.$store.state.username }}登录 <注销 登录

<span style="color: #0000ff;"><<span style="color: #800000;">script<span style="color: #0000ff;">><span style="background-color: #f5f5f5; color: #000000;">
export <span style="background-color: #f5f5f5; color: #0000ff;">default<span style="background-color: #f5f5f5; color: #000000;"> {
name: <span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">App<span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">,methods:{
logout(){
<span style="background-color: #f5f5f5; color: #0000ff;">this<span style="background-color: #f5f5f5; color: #000000;">.$store.state.username<span style="background-color: #f5f5f5; color: #000000;">=<span style="background-color: #f5f5f5; color: #000000;">''
<span style="background-color: #f5f5f5; color: #0000ff;">this<span style="background-color: #f5f5f5; color: #000000;">.$store.state.token<span style="background-color: #f5f5f5; color: #000000;">=<span style="background-color: #f5f5f5; color: #000000;">''<span style="background-color: #f5f5f5; color: #000000;">
}
}
}
<span style="color: #0000ff;"></<span style="color: #800000;">script<span style="color: #0000ff;">>

<span style="color: #0000ff;"><<span style="color: #800000;">style<span style="color: #0000ff;">>

<span style="color: #0000ff;"></<span style="color: #800000;">style<span style="color: #0000ff;">>

Vue+restfulframework示例

Vue.use(Router)

export default new Router({
routes: [
{
path: '/',name: 'HelloWorld',component: HelloWorld
},{
path: '/index',name: 'index',component: Index
},{
path: '/login',name: 'Login',component: Login
},{
path: '/course',name: 'Course',component: Course
},{
path: '/course-detail/:id/',name: 'CourseDetail',component: CourseDetail
},{
path: '/micro/',name: 'Micro',component: Micro
},{
path: '/news/',name: 'News',component: News
},{
path: '*',component: NotFound
}
],mode:'history'
})

组件components

Vue+restfulframework示例

{{ msg }}

<span style="color: #0000ff;"><<span style="color: #800000;">script<span style="color: #0000ff;">><span style="background-color: #f5f5f5; color: #000000;">
export <span style="background-color: #f5f5f5; color: #0000ff;">default<span style="background-color: #f5f5f5; color: #000000;"> {
name: <span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">index<span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">,data () {
<span style="background-color: #f5f5f5; color: #0000ff;">return<span style="background-color: #f5f5f5; color: #000000;"> {
msg:<span style="background-color: #f5f5f5; color: #000000;">"<span style="background-color: #f5f5f5; color: #000000;">这里是首页<span style="background-color: #f5f5f5; color: #000000;">"<span style="background-color: #f5f5f5; color: #000000;">
}
}
}
<span style="color: #0000ff;"></<span style="color: #800000;">script<span style="color: #0000ff;">>

<span style="color: #008000;">
<span style="color: #0000ff;"><<span style="color: #800000;">style<span style="color: #0000ff;">>

<span style="color: #0000ff;"></<span style="color: #800000;">style<span style="color: #0000ff;">>

Vue+restfulframework示例

登录页面 用户名: 密码: <提交

<span style="color: #0000ff;"><<span style="color: #800000;">script<span style="color: #0000ff;">><span style="background-color: #f5f5f5; color: #000000;">
export <span style="background-color: #f5f5f5; color: #0000ff;">default<span style="background-color: #f5f5f5; color: #000000;"> {
name: <span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">index<span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">,data () {
<span style="background-color: #f5f5f5; color: #0000ff;">return<span style="background-color: #f5f5f5; color: #000000;"> {
username: <span style="background-color: #f5f5f5; color: #000000;">""<span style="background-color: #f5f5f5; color: #000000;">,password: <span style="background-color: #f5f5f5; color: #000000;">""<span style="background-color: #f5f5f5; color: #000000;">
}
},methods:{
DoLogin (){
<span style="background-color: #f5f5f5; color: #0000ff;">var<span style="background-color: #f5f5f5; color: #000000;"> that <span style="background-color: #f5f5f5; color: #000000;">= <span style="background-color: #f5f5f5; color: #0000ff;">this
<span style="background-color: #f5f5f5; color: #008000;">//<span style="background-color: #f5f5f5; color: #008000;"> console.log(this.$axios);
<span style="background-color: #f5f5f5; color: #0000ff;">this<span style="background-color: #f5f5f5; color: #000000;">.$axios.request({ <span style="background-color: #f5f5f5; color: #008000;">//<span style="background-color: #f5f5f5; color: #008000;">发送axios请求
<span style="background-color: #f5f5f5; color: #000000;"> url:<span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">http://127.0.0.1:8082/login/<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">,<span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">请求路径
<span style="BACkground-color: #f5f5f5; color: #000000;"> method:<span style="BACkground-color: #f5f5f5; color: #000000;">"<span style="BACkground-color: #f5f5f5; color: #000000;">POST<span style="BACkground-color: #f5f5f5; color: #000000;">"<span style="BACkground-color: #f5f5f5; color: #000000;">,<span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">请求方式
<span style="BACkground-color: #f5f5f5; color: #000000;"> data:{ <span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">要发送 的数据
<span style="BACkground-color: #f5f5f5; color: #000000;"> username:<span style="BACkground-color: #f5f5f5; color: #0000ff;">this<span style="BACkground-color: #f5f5f5; color: #000000;">.username,password:<span style="BACkground-color: #f5f5f5; color: #0000ff;">this<span style="BACkground-color: #f5f5f5; color: #000000;">.password
},responseType:<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">json<span style="BACkground-color: #f5f5f5; color: #000000;">' <span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">期望返回的类型是json的格式
<span style="BACkground-color: #f5f5f5; color: #000000;"> }).then(<span style="BACkground-color: #f5f5f5; color: #0000ff;">function<span style="BACkground-color: #f5f5f5; color: #000000;"> (responsE) { <span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">把返回的结果交给回调函数处理
<span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">登录成功之后,找到全局变量,把用户名和token赋值到其中
<span style="BACkground-color: #f5f5f5; color: #000000;"> that.$store.commit(<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">saveToken<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">,response.data);
<span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">重定向(登录成功之后让跳转到index页面)
<span style="BACkground-color: #f5f5f5; color: #000000;"> that.$router.push(<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">/index<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">)
<span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">为什么不直接用this呢?这里的this代表的是$axios,用that他代指的是整个Vue对象
<span style="BACkground-color: #f5f5f5; color: #000000;"> })
}
}

}
<span style="color: #0000ff;"></<span style="color: #800000;">script<span style="color: #0000ff;">>

<span style="color: #008000;">
<span style="color: #0000ff;"><<span style="color: #800000;">style<span style="color: #0000ff;">>

<span style="color: #0000ff;"></<span style="color: #800000;">style<span style="color: #0000ff;">>

Vue+restfulframework示例

{'path':'/course-detail/'+item.iD}"{{item.namE}}

<span style="color: #0000ff;"><<span style="color: #800000;">script<span style="color: #0000ff;">><span style="BACkground-color: #f5f5f5; color: #000000;">
export <span style="BACkground-color: #f5f5f5; color: #0000ff;">default<span style="BACkground-color: #f5f5f5; color: #000000;"> {
name: <span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">index<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">,data () {
<span style="BACkground-color: #f5f5f5; color: #0000ff;">return<span style="BACkground-color: #f5f5f5; color: #000000;"> {
msg:<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">课程页面<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">,courseList:[]
}
},mounted:<span style="BACkground-color: #f5f5f5; color: #0000ff;">function<span style="BACkground-color: #f5f5f5; color: #000000;"> () {
<span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">当组件一加载的时候就应该去数据库去获取数据
<span style="BACkground-color: #f5f5f5; color: #0000ff;">this<span style="BACkground-color: #f5f5f5; color: #000000;">.initCourses()
},methods:{
initCourses:<span style="BACkground-color: #f5f5f5; color: #0000ff;">function<span style="BACkground-color: #f5f5f5; color: #000000;"> () {
<span style="BACkground-color: #f5f5f5; color: #0000ff;">var<span style="BACkground-color: #f5f5f5; color: #000000;"> that <span style="BACkground-color: #f5f5f5; color: #000000;">= <span style="BACkground-color: #f5f5f5; color: #0000ff;">this
<span style="BACkground-color: #f5f5f5; color: #0000ff;">this<span style="BACkground-color: #f5f5f5; color: #000000;">.$axios.request({
url:<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">http://127.0.0.1:8082/course/<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">,method:<span style="BACkground-color: #f5f5f5; color: #000000;">"<span style="BACkground-color: #f5f5f5; color: #000000;">GET<span style="BACkground-color: #f5f5f5; color: #000000;">"<span style="BACkground-color: #f5f5f5; color: #000000;">
}).then(<span style="BACkground-color: #f5f5f5; color: #0000ff;">function<span style="BACkground-color: #f5f5f5; color: #000000;"> (responsE) {
console.log(responsE);
that.courseList <span style="BACkground-color: #f5f5f5; color: #000000;">=<span style="BACkground-color: #f5f5f5; color: #000000;"> response.data.courseList <span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">把从数据库取的数据赋值到courseList列表里面
<span style="BACkground-color: #f5f5f5; color: #000000;"> })
}
}

}

<span style="color: #0000ff;"></<span style="color: #800000;">script<span style="color: #0000ff;">>

<span style="color: #008000;">
<span style="color: #0000ff;"><<span style="color: #800000;">style<span style="color: #0000ff;">>

<span style="color: #0000ff;"></<span style="color: #800000;">style<span style="color: #0000ff;">>

Vue+restfulframework示例

Hello" 课程详细 {{ title }} {{ sumMary }}

<span style="color: #0000ff;"><<span style="color: #800000;">script<span style="color: #0000ff;">><span style="BACkground-color: #f5f5f5; color: #000000;">
export <span style="BACkground-color: #f5f5f5; color: #0000ff;">default<span style="BACkground-color: #f5f5f5; color: #000000;"> {
name: <span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">HelloWorld<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">,data () {
<span style="BACkground-color: #f5f5f5; color: #0000ff;">return<span style="BACkground-color: #f5f5f5; color: #000000;"> {
title:<span style="BACkground-color: #f5f5f5; color: #000000;">''<span style="BACkground-color: #f5f5f5; color: #000000;">,sumMary:<span style="BACkground-color: #f5f5f5; color: #000000;">''<span style="BACkground-color: #f5f5f5; color: #000000;">
}
},mounted:<span style="BACkground-color: #f5f5f5; color: #0000ff;">function<span style="BACkground-color: #f5f5f5; color: #000000;"> () {
<span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">当组件一加载就执行的函数
<span style="BACkground-color: #f5f5f5; color: #0000ff;">this<span style="BACkground-color: #f5f5f5; color: #000000;">.initCoursesDetail()
},methods:{
initCoursesDetail(){
<span style="BACkground-color: #f5f5f5; color: #0000ff;">var<span style="BACkground-color: #f5f5f5; color: #000000;"> nid <span style="BACkground-color: #f5f5f5; color: #000000;">= <span style="BACkground-color: #f5f5f5; color: #0000ff;">this<span style="BACkground-color: #f5f5f5; color: #000000;">.$route.params.id <span style="BACkground-color: #f5f5f5; color: #008000;">//<span style="BACkground-color: #f5f5f5; color: #008000;">获取id
<span style="BACkground-color: #f5f5f5; color: #0000ff;">var<span style="BACkground-color: #f5f5f5; color: #000000;"> that <span style="BACkground-color: #f5f5f5; color: #000000;">= <span style="BACkground-color: #f5f5f5; color: #0000ff;">this
<span style="BACkground-color: #f5f5f5; color: #0000ff;">var<span style="BACkground-color: #f5f5f5; color: #000000;"> url <span style="BACkground-color: #f5f5f5; color: #000000;">= <span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">http://127.0.0.1:8082/course/<span style="BACkground-color: #f5f5f5; color: #000000;">' <span style="BACkground-color: #f5f5f5; color: #000000;">+<span style="BACkground-color: #f5f5f5; color: #000000;"> nid <span style="BACkground-color: #f5f5f5; color: #000000;">+ <span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">.json<span style="BACkground-color: #f5f5f5; color: #000000;">'
<span style="BACkground-color: #f5f5f5; color: #0000ff;">this<span style="BACkground-color: #f5f5f5; color: #000000;">.$axios.request({
url:url,methods:<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">GET<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">,responseType:<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">json<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">
}).then(<span style="BACkground-color: #f5f5f5; color: #0000ff;">function<span style="BACkground-color: #f5f5f5; color: #000000;"> (responsE) {
console.log(responsE)
that.title <span style="BACkground-color: #f5f5f5; color: #000000;">=<span style="BACkground-color: #f5f5f5; color: #000000;"> response.data.title;
that.sumMary <span style="BACkground-color: #f5f5f5; color: #000000;">=<span style="BACkground-color: #f5f5f5; color: #000000;"> response.data.summary
})
}
}
}
<span style="color: #0000ff;"></<span style="color: #800000;">script<span style="color: #0000ff;">>

<span style="color: #008000;">
<span style="color: #0000ff;"><<span style="color: #800000;">style <span style="color: #ff0000;">scoped<span style="color: #0000ff;">>

<span style="color: #0000ff;"></<span style="color: #800000;">style<span style="color: #0000ff;">>

Vue+restfulframework示例

Hello" 欢迎报名学位课

<span style="color: #0000ff;"><<span style="color: #800000;">script<span style="color: #0000ff;">><span style="BACkground-color: #f5f5f5; color: #000000;">
export <span style="BACkground-color: #f5f5f5; color: #0000ff;">default<span style="BACkground-color: #f5f5f5; color: #000000;"> {
name: <span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">HelloWorld<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">,data () {
<span style="BACkground-color: #f5f5f5; color: #0000ff;">return<span style="BACkground-color: #f5f5f5; color: #000000;"> {
msg: <span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">Welcome to Your Vue.js App<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">
}
}
}
<span style="color: #0000ff;"></<span style="color: #800000;">script<span style="color: #0000ff;">>

<span style="color: #008000;">
<span style="color: #0000ff;"><<span style="color: #800000;">style <span style="color: #ff0000;">scoped<span style="color: #0000ff;">><span style="BACkground-color: #f5f5f5; color: #800000;">
h1,h2 <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
font-weight<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> normal<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}<span style="BACkground-color: #f5f5f5; color: #800000;">
ul <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
list-style-type<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> none<span style="BACkground-color: #f5f5f5; color: #000000;">;<span style="BACkground-color: #f5f5f5; color: #ff0000;">
padding<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> 0<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}<span style="BACkground-color: #f5f5f5; color: #800000;">
li <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
display<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> inline-block<span style="BACkground-color: #f5f5f5; color: #000000;">;<span style="BACkground-color: #f5f5f5; color: #ff0000;">
margin<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> 0 10px<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}<span style="BACkground-color: #f5f5f5; color: #800000;">
a <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
color<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> #42b983<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}
<span style="color: #0000ff;"></<span style="color: #800000;">style<span style="color: #0000ff;">>

Vue+restfulframework示例

Hello" 深科技

<span style="color: #0000ff;"><<span style="color: #800000;">script<span style="color: #0000ff;">><span style="BACkground-color: #f5f5f5; color: #000000;">
export <span style="BACkground-color: #f5f5f5; color: #0000ff;">default<span style="BACkground-color: #f5f5f5; color: #000000;"> {
name: <span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">HelloWorld<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">,h2 <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
font-weight<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> normal<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}<span style="BACkground-color: #f5f5f5; color: #800000;">
ul <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
list-style-type<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> none<span style="BACkground-color: #f5f5f5; color: #000000;">;<span style="BACkground-color: #f5f5f5; color: #ff0000;">
padding<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> 0<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}<span style="BACkground-color: #f5f5f5; color: #800000;">
li <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
display<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> inline-block<span style="BACkground-color: #f5f5f5; color: #000000;">;<span style="BACkground-color: #f5f5f5; color: #ff0000;">
margin<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> 0 10px<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}<span style="BACkground-color: #f5f5f5; color: #800000;">
a <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
color<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> #42b983<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}
<span style="color: #0000ff;"></<span style="color: #800000;">style<span style="color: #0000ff;">>

s.vue

Vue+restfulframework示例

Hello" 找不到页面

<span style="color: #0000ff;"><<span style="color: #800000;">script<span style="color: #0000ff;">><span style="BACkground-color: #f5f5f5; color: #000000;">
export <span style="BACkground-color: #f5f5f5; color: #0000ff;">default<span style="BACkground-color: #f5f5f5; color: #000000;"> {
name: <span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">HelloWorld<span style="BACkground-color: #f5f5f5; color: #000000;">'<span style="BACkground-color: #f5f5f5; color: #000000;">,h2 <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
font-weight<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> normal<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}<span style="BACkground-color: #f5f5f5; color: #800000;">
ul <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
list-style-type<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> none<span style="BACkground-color: #f5f5f5; color: #000000;">;<span style="BACkground-color: #f5f5f5; color: #ff0000;">
padding<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> 0<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}<span style="BACkground-color: #f5f5f5; color: #800000;">
li <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
display<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> inline-block<span style="BACkground-color: #f5f5f5; color: #000000;">;<span style="BACkground-color: #f5f5f5; color: #ff0000;">
margin<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> 0 10px<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}<span style="BACkground-color: #f5f5f5; color: #800000;">
a <span style="BACkground-color: #f5f5f5; color: #000000;">{<span style="BACkground-color: #f5f5f5; color: #ff0000;">
color<span style="BACkground-color: #f5f5f5; color: #000000;">:<span style="BACkground-color: #f5f5f5; color: #0000ff;"> #42b983<span style="BACkground-color: #f5f5f5; color: #000000;">;
<span style="BACkground-color: #f5f5f5; color: #000000;">}
<span style="color: #0000ff;"></<span style="color: #800000;">style<span style="color: #0000ff;">>

保存全局使用的变量store

Vue+restfulframework示例

Vue.use(VueX)

export default new Vuex.Store({
//组件中通过this.$store.state.username 调用
state:{
username:Cookie.get('username'),token:Cookie.get('token')
},mutations:{
//组件中通过this.$store.commit(参数)调用
saveToken:function (state,data) { //存放用户名和token的函数
state.username = data.username //data代指从后端返回过来的数据
state.token = data.token
Cookie.set('username','20min') //把用户名和token存放到cookie中
Cookie.set('token','20min')
},//清空token和cookie
clearToken:function (statE) {
state.username=null
state.token= null
Cookie.remove('username')
Cookie.remove('token')
}
}
})

后端代码:

Vue+restfulframework示例

The urlpatterns list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/1.11/topics/http/urls/
Examples:
Function views

  1. Add an import: from my_app import views
  2. Add a URL to urlpatterns: url(r'^$',views.home,name='home')
    Class-based views
  3. Add an import: from other_app.views import Home
  4. Add a URL to urlpatterns: url(r'^$',Home.as_view(),name='home')
    Including another URLconf
  5. Import the include() function: from django.conf.urls import url,include
  6. Add a URL to urlpatterns: url(r'^blog/',include('blog.urls'))
    <span style="color: #800000;">"""
    <span style="color: #0000ff;">from django.conf.urls <span style="color: #0000ff;">import<span style="color: #000000;"> url
    <span style="color: #0000ff;">from django.contrib <span style="color: #0000ff;">import<span style="color: #000000;"> admin
    <span style="color: #0000ff;">from api <span style="color: #0000ff;">import<span style="color: #000000;"> views
    urlpatterns =<span style="color: #000000;"> [
    url(r<span style="color: #800000;">'<span style="color: #800000;">^admin/<span style="color: #800000;">'<span style="color: #000000;">,admin.site.urls),url(r<span style="color: #800000;">'<span style="color: #800000;">^login/<span style="color: #800000;">'<span style="color: #000000;">,views.LoginView.as_view()),url(r<span style="color: #800000;">'<span style="color: #800000;">^course/$<span style="color: #800000;">'<span style="color: #000000;">,views.CourseView.as_view()),url(r<span style="color: #800000;">'<span style="color: #800000;">^course/(?P\d+).(?P[a-z-9]+)$<span style="color: #800000;">'<span style="color: #000000;">,]
s.py

Vue+restfulframework示例

django.shortcuts httpResponse rest_framework.views rest_framework.response django.http

<span style="color: #0000ff;">class<span style="color: #000000;"> LoginView(APIView):

</span><span style="color: #0000ff;"&gt;def</span> get(self,request,*args,**<span style="color: #000000;"&gt;kwargs):
    ret </span>=<span style="color: #000000;"&gt; {
        </span><span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;code</span><span style="color: #800000;"&gt;'</span>:111<span style="color: #000000;"&gt;,</span><span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;data</span><span style="color: #800000;"&gt;'</span>:<span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;在知识的海洋里一路向前</span><span style="color: #800000;"&gt;'</span><span style="color: #000000;"&gt;
    }

    response </span>=<span style="color: #000000;"&gt;  JsonResponse(ret)
    response[</span><span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;Access-Control-Allow-Origin</span><span style="color: #800000;"&gt;'</span>]=<span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;*</span><span style="color: #800000;"&gt;'</span>
    <span style="color: #0000ff;"&gt;return</span><span style="color: #000000;"&gt; response

</span><span style="color: #0000ff;"&gt;def</span> post(self,**<span style="color: #000000;"&gt;kwargs):
    </span><span style="color: #0000ff;"&gt;print</span>(request.body)  <span style="color: #008000;"&gt;#</span><span style="color: #008000;"&gt;在body里面有值</span>
    <span style="color: #0000ff;"&gt;print</span>(request.POST)   <span style="color: #008000;"&gt;#</span><span style="color: #008000;"&gt;在post里面是没有值的</span>
    ret =<span style="color: #000000;"&gt; {
        </span><span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;code</span><span style="color: #800000;"&gt;'</span>:1000<span style="color: #000000;"&gt;,</span><span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;username</span><span style="color: #800000;"&gt;'</span>:<span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;hc</span><span style="color: #800000;"&gt;'</span><span style="color: #000000;"&gt;,</span><span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;token</span><span style="color: #800000;"&gt;'</span>:<span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;sdswr3fdfsdfdxqw2fgh</span><span style="color: #800000;"&gt;'</span><span style="color: #000000;"&gt;,}
    response </span>=<span style="color: #000000;"&gt; JsonResponse(ret)
    response[</span><span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;Access-Control-Allow-Origin</span><span style="color: #800000;"&gt;'</span>] = <span style="color: #800000;"&gt;"</span><span style="color: #800000;"&gt;*</span><span style="color: #800000;"&gt;"</span>
    <span style="color: #0000ff;"&gt;return</span><span style="color: #000000;"&gt; response

</span><span style="color: #0000ff;"&gt;def</span> options(self,**<span style="color: #000000;"&gt;kwargs):
    response </span>=<span style="color: #000000;"&gt; httpResponse()
    response[</span><span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;Access-Control-Allow-Origin</span><span style="color: #800000;"&gt;'</span>] = <span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;*</span><span style="color: #800000;"&gt;'</span><span style="color: #000000;"&gt;
    response[</span><span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;Access-Control-Allow-Headers</span><span style="color: #800000;"&gt;'</span>] = <span style="color: #800000;"&gt;'</span><span style="color: #800000;"&gt;*</span><span style="color: #800000;"&gt;'</span>
    <span style="color: #008000;"&gt;#</span><span style="color: #008000;"&gt; response['Access-Control-Allo w-Methods'] = 'PUT'</span>
    <span style="color: #0000ff;"&gt;return</span><span style="color: #000000;"&gt; response

<span style="color: #0000ff;">class<span style="color: #000000;"> CourseView(APIView):
<span style="color: #0000ff;">def get(self,**<span style="color: #000000;">kwargs):
<span style="color: #0000ff;">print<span style="color: #000000;">(args,kwargs)
pk = kwargs.get(<span style="color: #800000;">'<span style="color: #800000;">pk<span style="color: #800000;">'<span style="color: #000000;">)
<span style="color: #0000ff;">if<span style="color: #000000;"> pk:
<span style="color: #0000ff;">print(kwargs.get(<span style="color: #800000;">'<span style="color: #800000;">pk<span style="color: #800000;">'<span style="color: #000000;">))
ret =<span style="color: #000000;"> {
<span style="color: #800000;">'<span style="color: #800000;">title<span style="color: #800000;">': <span style="color: #800000;">"<span style="color: #800000;">标题标题标题<span style="color: #800000;">"<span style="color: #000000;">,<span style="color: #800000;">'<span style="color: #800000;">sumMary<span style="color: #800000;">': <span style="color: #800000;">'<span style="color: #800000;">老师,太饿了。怎么还不下课<span style="color: #800000;">'<span style="color: #000000;">
}
<span style="color: #0000ff;">else<span style="color: #000000;">:
ret =<span style="color: #000000;"> {
<span style="color: #800000;">'<span style="color: #800000;">code<span style="color: #800000;">':1000<span style="color: #000000;">,<span style="color: #800000;">'<span style="color: #800000;">courseList<span style="color: #800000;">'<span style="color: #000000;">:[
{<span style="color: #800000;">'<span style="color: #800000;">name<span style="color: #800000;">':<span style="color: #800000;">'<span style="color: #800000;">人生苦短,来学Python<span style="color: #800000;">',<span style="color: #800000;">'<span style="color: #800000;">id<span style="color: #800000;">':1<span style="color: #000000;">},{<span style="color: #800000;">'<span style="color: #800000;">name<span style="color: #800000;">':<span style="color: #800000;">'<span style="color: #800000;">32天学会java,欢迎报名<span style="color: #800000;">',<span style="color: #800000;">'<span style="color: #800000;">id<span style="color: #800000;">':2<span style="color: #000000;">},{<span style="color: #800000;">'<span style="color: #800000;">name<span style="color: #800000;">':<span style="color: #800000;">'<span style="color: #800000;">人工智能即将统领世界...<span style="color: #800000;">',<span style="color: #800000;">'<span style="color: #800000;">id<span style="color: #800000;">':3<span style="color: #000000;">},]
}
response=<span style="color: #000000;"> JsonResponse(ret)
response[<span style="color: #800000;">'<span style="color: #800000;">Access-Control-Allow-Origin<span style="color: #800000;">'] = <span style="color: #800000;">'<span style="color: #800000;">*<span style="color: #800000;">'
<span style="color: #0000ff;">return response

s.py

大佬总结

以上是大佬教程为你收集整理的Vue+restfulframework示例全部内容,希望文章能够帮你解决Vue+restfulframework示例所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: