Vue.JS和Sails.JS查询参数“ where”子句

时间:2018-07-29 00:40:59

标签: vue.js vuejs2 sails.js vue-resource sails-mongo

我正在使用Vue资源将HTTP请求发送到我的Sails.JS后端。

一切正常,除了唯一的问题是Sails中的where子句未实现应有的方式。

这是我的代码:

我的模板:

  <div class="content">
    <input type="text" class="search" placeholder="Search Users" v-model="search">
    <button v-on:click="searchUsers" class="add-btn search-btn"> <i class="fas fa-search"></i> </button>
    <div class="list">
      <ul class="lists-group">
        <template v-for="(user, index) in users">
          <router-link v-bind:to="'users/user/' + user.id" class="lists-item">{{ user.firstName }} {{ user.lastName }}</router-link>
        </template>
      </ul>
    </div>
  </div>

我的脚本

  export default {
    data: function() {
      return {
        search : '',
        users: [],
      }
    },
    methods: {
      searchUsers: function() {
        this.$http.get('http://localhost:1337/users?firstName=' + this.search).then(result => {
          this.users = result.body;
        })
        if (!this.search) this.getAllUsers();
      },
      getAllUsers: function() {
        this.$http.get('http://localhost:1337/api/v1/users').then(users => {
          this.users = users.body.users;
        })
      }
    },
    created: function() {
      this.$http.get('http://localhost:1337/api/v1/users').then(users => {
        this.users = users.body.users;
      })
    }
  }

我尝试对{ params : { where : { firstName : contains : this.search } } }使用get请求,但仍然无法正常工作。

发送这样的查询的最佳方法是什么?

'http://localhost:1337/users?where={"firstName":{"contains":"UserName"}, "occupation": "doctor"}'

0 个答案:

没有答案