• uni-app云开发(我直接访问后端)


      uniCloud 是 DCloud 联合阿里云、腾讯云,为开发者提供的基于 serverless 模式和 js 编程的云开发平台。

    熟悉的js的程序员,轻松搞定前后台整体业务。实现了前端完成前后端工作的可能

    用法:

    第一步新建uniCloud项目

    点击文件 ——>新建——>项目

     在这里我的项目名称uniCloud开发

     第二步点击关联云服务或打开unicloud web控制台

    第一次打开需要认证

    认证以后  新建服务空间

     下一步

     接下来(创建时间可能会需要十几分钟)

     下一步

     下一步

     云函数

    我在这里新建了一个名为feed的云函数

    上传部署

     使用云函数

     在pages/index/index.vue中

    1. <template>
    2. <view class="content">
    3. <button @click="call">呼叫服务器</button>
    4. </view>
    5. </template>
    6. <script>
    7. export default {
    8. data() {
    9. return {
    10. title: 'Hello'
    11. }
    12. },
    13. methods: {
    14. call() {
    15. uniCloud.callFunction({
    16. name: "feed",
    17. data: {
    18. name: "hsf",
    19. age: 18
    20. }
    21. }).then(res => {
    22. uni.showModal({
    23. content: JSON.stringify(res.result)
    24. })
    25. }).catch(err => {
    26. console.log(err);
    27. })
    28. }
    29. }
    30. }
    31. </script>
    32. <style>
    33. </style>

    使用云数据库

    第一步新建云数据库

     添加记录

     

    1. {
    2. "name": "白泽",
    3. "tel": "18239607956"
    4. }

     pages/index/index.vue

    查询

    1. <template>
    2. <view class="content">
    3. <button @click="call">呼叫服务器</button>
    4. <unicloud-db ref="udb" v-slot:default="{data, loading, error, options}" collection="concat">
    5. <view v-if="error">{{error.message}}</view>
    6. <view v-else>
    7. <!-- {{data}} -->
    8. <uni-list>
    9. <uni-list-item link :to="'/pages/update/update?item='+JSON.stringify(item)"
    10. @longpress.native="$refs.udb.remove(item._id)" v-for="item in data" :key="item._id"
    11. :title="item.name" :note="item.tel">
    12. </uni-list-item>
    13. </uni-list>
    14. </view>
    15. </unicloud-db>
    16. <!-- <navigator url="../add/add"> <button>添加</button></navigator> -->
    17. </view>
    18. </template>
    19. <script>
    20. export default {
    21. data() {
    22. return {
    23. title: 'Hello'
    24. }
    25. },
    26. onLoad() {
    27. },
    28. onShow() {
    29. if (this.$refs.udb) {
    30. this.$refs.udb.refresh();
    31. }
    32. },
    33. methods: {
    34. call() {
    35. uniCloud.callFunction({
    36. name: "feed",
    37. data: {
    38. name: "hsf",
    39. age: 18
    40. }
    41. }).then(res => {
    42. uni.showModal({
    43. content: JSON.stringify(res.result)
    44. })
    45. }).catch(err => {
    46. console.log(err);
    47. })
    48. }
    49. }
    50. }
    51. </script>
    52. <style>
    53. .content {}
    54. </style>

    删除(长按该列表)

     pages/index/index.vue中

    1. <template>
    2. <view class="content">
    3. <button @click="call">呼叫服务器</button>
    4. <unicloud-db ref="udb" v-slot:default="{data, loading, error, options}" collection="concat">
    5. <view v-if="error">{{error.message}}</view>
    6. <view v-else>
    7. <!-- {{data}} -->
    8. <uni-list>
    9. <uni-list-item @longpress.native="$refs.udb.remove(item._id)" v-for="item in data" :key="item._id"
    10. :title="item.name" :note="item.tel">
    11. </uni-list-item>
    12. </uni-list>
    13. </view>
    14. </unicloud-db>
    15. </view>
    16. </template>
    17. <script>
    18. export default {
    19. data() {
    20. return {
    21. title: 'Hello'
    22. }
    23. },
    24. onLoad() {
    25. },
    26. methods: {
    27. call() {
    28. uniCloud.callFunction({
    29. name: "feed",
    30. data: {
    31. name: "hsf",
    32. age: 18
    33. }
    34. }).then(res => {
    35. uni.showModal({
    36. content: JSON.stringify(res.result)
    37. })
    38. }).catch(err => {
    39. console.log(err);
    40. })
    41. }
    42. }
    43. }
    44. </script>
    45. <style>
    46. .content {}
    47. </style>

    增加

    在pages中新建add页面

    pages/add/add.vue

    1. <template>
    2. <view>
    3. <uni-easyinput v-model="item.name" placeholder="用户名" />
    4. <uni-easyinput v-model="item.tel" placeholder="电话" />
    5. <button @click="addConcat">添加</button>
    6. </view>
    7. </template>
    8. <script>
    9. export default {
    10. data() {
    11. return {
    12. item: {
    13. name: "",
    14. tel: ""
    15. }
    16. }
    17. },
    18. methods: {
    19. addConcat() {
    20. // 数据库
    21. var db = uniCloud.database();
    22. db.collection("concat")
    23. // 执行添加
    24. .add(this.item)
    25. .then(res => {
    26. uni.showToast({
    27. title: "添加成功"
    28. })
    29. })
    30. }
    31. }
    32. }
    33. </script>
    34. <style>
    35. </style>

    修改

    在pages中新建update页面

    pages/update/update.vue

    1. <template>
    2. <view>
    3. <uni-easyinput v-model="item.name" placeholder="用户名" />
    4. <uni-easyinput v-model="item.tel" placeholder="电话" />
    5. <button @click="updateConcat">更新</button>
    6. </view>
    7. </template>
    8. <script>
    9. export default {
    10. data() {
    11. return {
    12. item: {
    13. name: "",
    14. tel: ""
    15. }
    16. }
    17. },
    18. onLoad(option) {
    19. this.item = JSON.parse(option.item)
    20. },
    21. methods: {
    22. updateConcat() {
    23. // 获取item
    24. var item = {
    25. ...this.item
    26. }
    27. // 删除id
    28. delete item._id;
    29. // 数据库
    30. var db = uniCloud.database();
    31. db.collection("concat")
    32. .doc(this.item._id) //查询
    33. .update(item)
    34. .then(res => {
    35. uni.showToast({
    36. title: "更新成功"
    37. })
    38. uni.navigateBack();
    39. }).catch(err => {
    40. uni.showModal({
    41. title: JSON.stringify(err)
    42. })
    43. })
    44. }
    45. }
    46. }
    47. </script>
    48. <style>
    49. </style>

    pages/add/add.vue

    1. <template>
    2. <view class="content">
    3. <button @click="call">呼叫服务器</button>
    4. <unicloud-db ref="udb" v-slot:default="{data, loading, error, options}" collection="concat">
    5. <view v-if="error">{{error.message}}</view>
    6. <view v-else>
    7. <!-- {{data}} -->
    8. <uni-list>
    9. <uni-list-item link :to="'/pages/update/update?item='+JSON.stringify(item)"
    10. @longpress.native="$refs.udb.remove(item._id)" v-for="item in data" :key="item._id"
    11. :title="item.name" :note="item.tel">
    12. </uni-list-item>
    13. </uni-list>
    14. </view>
    15. </unicloud-db>
    16. <!-- <navigator url="../add/add"> <button>添加</button></navigator> -->
    17. </view>
    18. </template>
    19. <script>
    20. export default {
    21. data() {
    22. return {
    23. title: 'Hello'
    24. }
    25. },
    26. onLoad() {
    27. },
    28. onShow() {
    29. if (this.$refs.udb) {
    30. this.$refs.udb.refresh();
    31. }
    32. },
    33. methods: {
    34. call() {
    35. uniCloud.callFunction({
    36. name: "feed",
    37. data: {
    38. name: "hsf",
    39. age: 18
    40. }
    41. }).then(res => {
    42. uni.showModal({
    43. content: JSON.stringify(res.result)
    44. })
    45. }).catch(err => {
    46. console.log(err);
    47. })
    48. }
    49. }
    50. }
    51. </script>
    52. <style>
    53. .content {}
    54. </style>

  • 相关阅读:
    VisualODX——ODX数据自动转换工具
    文字转语音播报模块(一):阿里云nls服务使用示例
    如何看待AIGC技术?
    局域网IP扫描
    Spring Boot框架
    android studio创建C++项目
    什么是I/O内存?
    OSM(OpenStreetMap)全球路网数据下载方式介绍
    【Azure 架构师学习笔记】- Azure Private Endpoint
    Mybatis-动态 SQL详解
  • 原文地址:https://blog.csdn.net/m0_51024444/article/details/128191516