小编Non*_*Non的帖子

在数据库问题中保留数据,在控制台上接收NULL

我是NodeJS的新手,我在尝试在数据库中保存/保存一些数据时遇到问题.

让我们从头开始,这样你就可以更容易理解.我有一个运动列表,可选择选中或取消选中,这就是我需要坚持,检查的内容.

前端:

controller.js

$scope.toggleSportSelection = function(sport) {
  var params = {};
  params.user = $scope.customer.customer;
  sport.checked = !sport.checked;
  SportsFactory.setSportChecked(params);
};
Run Code Online (Sandbox Code Playgroud)

service.js

  setSportChecked: function(params) {
    var defer = $q.defer();
    $http.post(CONSTANT_VARS.BACKEND_URL + '/sports/checked', params)
    .success(function(sportChecked) {
        LocalForageFactory.remove(CONSTANT_VARS.LOCALFORAGE_SPORTS_CHECKED, params);
        defer.resolve(sportChecked);
      })
      .error(function(err) {
        console.log(err);
        defer.reject(err);
      });
    return defer.promise;
  }
Run Code Online (Sandbox Code Playgroud)

我一直在调试这个前端部分,一切似乎都没问题......

现在回到结束:

setSportCtrl.js

module.exports = {

  setCheck: function(req, res) {
    var checkedSportParams = req.body;

    SportSelectionService.sportChecked(checkedSportParams).then(function() {
      res.json(200, {msg: 'OK'});
    }, function(err) {
      res.json(400, err);
    });
  }
}
Run Code Online (Sandbox Code Playgroud)

SportSelection.js(型号)

module.exports = {
  connection: 'RedisServer', …
Run Code Online (Sandbox Code Playgroud)

javascript node.js angularjs sails.js

6
推荐指数
1
解决办法
177
查看次数

音频标签,如何从Angular处理它

我正在使用HTML5音频标签,但是我想从Angular控制它,根据指南我不必从控制器触摸DOM,所以我必须创建一个指令.

假设我有这两个按钮

<button onclick="playMusic()" type="button">Play Music</button>
<button onclick="pauseMusic()" type="button">Pause Music</button>
Run Code Online (Sandbox Code Playgroud)

这在JS部分

var music = document.getElementById("myMusic"); 

function playMusic() { 
    music.play(); 
} 

function pauseMusic() { 
    music.pause(); 
} 
Run Code Online (Sandbox Code Playgroud)

但是我需要将它转录成Angular,那么,我该如何为它创建一个指令呢?或者我可以在控制器中实现它吗?

javascript audio html5 html5-audio angularjs

6
推荐指数
1
解决办法
3913
查看次数

ng-bind-html vs {{interpolation}}

这是我的问题,有什么优点和缺点?

在我的应用程序中我使用插值但我得到这样的错误

{{::sport.name}} - > NHL Futures &amp; Props

如果我使用 ng-bind-html

ng-bind-html="sport.name" - > NHL Futures & Props

在这种情况下ng-bind-html正在做我想要的.但是,它有什么问题吗?

有没有比另一个好?

所以告诉我,我愿意接受建议.

angularjs ng-bind-html angularjs-interpolate

6
推荐指数
1
解决办法
3005
查看次数

通过特殊条件声明获得明确

我将向您展示我的应用程序的一小部分,我想知道哪个是正确处理条件的正确方法.如果我向你展示的两种方式都是正确的,我希望你告诉我后果/逆境

if ((some.thing === '' || 0) || (some.how === '' || 0)) {
      //something is going on here
}
Run Code Online (Sandbox Code Playgroud)

这就是我到目前为止的方式,有什么不好的吗?

或者应该这样更好:

if ((some.thing === '' || some.thing === 0) || (some.how === '' || some.how === 0)) {
       //something is going on here
}
Run Code Online (Sandbox Code Playgroud)

那么你的建议是什么?结尾的结果是一样的吗?

编辑

添加另一种方式:

if (some.thing === '' || some.thing === 0 || some.how === '' || some.how === 0) {
       //something is going on here
}
Run Code Online (Sandbox Code Playgroud)

javascript

6
推荐指数
1
解决办法
77
查看次数

这个函数有太多的陈述.(41)

我有这个控制器

  .controller('ctrl', function($scope, $rootScope, $timeout, $alert, 
                               $location, $tooltip, $popover, BetSlipFactory, 
                               AccordionsFactory, AuthFactory, 
                               RiskWinCalculations) {...});
Run Code Online (Sandbox Code Playgroud)

而且,由于以下原因,我收到此错误jshint:

第10行col 44此函数有太多语句.(41)

所以,我该怎么办才能避免呢?

javascript jshint angularjs

6
推荐指数
2
解决办法
1万
查看次数

ES6中的格式化日期

我正在格式化一个日期,没有momentjs或任何其他库,只是纯JS.我想知道是否有办法用ES6简化这一点

let currentDate = new Date(); 

const videosInformation = {
  time: currentDate.getHours() + ':' + currentDate.getMinutes(),
  date: (currentDate.getMonth() + 1) + '/' + currentDate.getDate() + '/' + currentDate.getFullYear(),
  gameId: Math.floor((Math.random() * 5000) + 1)
};
Run Code Online (Sandbox Code Playgroud)

我在DOM中看到你使用类似的东西 renderSomething={`something: ${someObj}`}

所以你不必这样做 renderSomething={"something: " + {someObj}}

有什么我应该用来做那种格式?

javascript date ecmascript-6

6
推荐指数
1
解决办法
2万
查看次数

JSX/React上的ESLint错误

我正在使用React,这是我的第一次,我需要知道这些错误是什么以及如何解决它

app/app.js
  21:49   error  'socket' is missing in props validation for App  react/prop-types
  22:47   error  'room' is missing in props validation for App    react/prop-types
  23:47   error  'mode' is missing in props validation for App    react/prop-types
  24:47   error  'user' is missing in props validation for App    react/prop-types
  26:32   error  'socket' is missing in props validation for App  react/prop-types
  26:57   error  'room' is missing in props validation for App    react/prop-types
  26:80   error  'mode' is missing in props validation for App    react/prop-types
  26:103 …
Run Code Online (Sandbox Code Playgroud)

javascript eslint

6
推荐指数
1
解决办法
4508
查看次数

如何测试包含导入的异步方法的类?

这是我第一次进行测试,并且获得了测试UI组件的技巧。现在,我正在尝试测试其中包含一些静态方法的类。它也包含参数。

见上课:

import UserInfoModel from '../models/UserInfo.model';
import ApiClient from './apiClient';
import ApiNormalizer from './apiNormalizer';
import Article from '../models/Article.model';
import Notification from '../models/Notification.model';
import Content from '../models/Link.model';

export interface ResponseData {
  [key: string]: any;
}

export default class ApiService {
  static makeApiCall(
    url: string,
    normalizeCallback: (d: ResponseData) => ResponseData | null,
    callback: (d: any) => any
  ) {
    return ApiClient.get(url)
      .then(res => {
        callback(normalizeCallback(res.data));
      })
      .catch(error => {
        console.error(error);
      });
  }


  static getProfile(callback: (a: UserInfoModel) => void) {
    return ApiService.makeApiCall(`profile`, ApiNormalizer.normalizeProfile, …
Run Code Online (Sandbox Code Playgroud)

javascript testing ecmascript-6 reactjs jestjs

6
推荐指数
2
解决办法
483
查看次数

在另一个承诺中承诺?

这样做可以吗?

例如,我有我的退出服务

  logout: function() {
    var defer = $q.defer();

    this.getCustomer().then(function(credentials) {
      $http.post(CONSTANT_VARS.BACKEND_URL + '/auth/logout',
      {username: credentials.username, customer: credentials.customer}
    ).success(function(data) {
        if (data.error) {
          defer.reject(data);
        }
        LocalForageFactory.remove(CONSTANT_VARS.LOCALFORAGE_CUSTOMER).then(function() {
          /*Removing LocalForage Items*/
          cleanLocalForage();
          defer.resolve(data);
        }, function(err) {
          console.log(err);
          defer.reject(data);
        });
      }).error(function(data) {
        cleanLocalForage();
        defer.reject(data);
      });
    }, function(err) {
      defer.reject(err);
    });
    return defer.promise;
  },
Run Code Online (Sandbox Code Playgroud)

然后我在控制器中有一个函数,一旦会话到期就会返回一个错误.当会话到期时,我需要注销用户并将其重定向到登录路径.所以,这就是我到目前为止所拥有的:

$scope.removeSlip = function(slip) {
  BetSlipFactory.removeSlip(slip).then(function() {
  }, function(err) {
    console.log(err);
    AuthFactory.logout();
    $location.path('/');
  });
};
Run Code Online (Sandbox Code Playgroud)

或者我应该通过注销承诺做这样的事情BetSlipFactory.removeSlip()吗?

$scope.removeSlip = function(slip) {
  BetSlipFactory.removeSlip(slip).then(function() {
  }, function(err) {
    console.log(err);
    AuthFactory.logout().then(function() …
Run Code Online (Sandbox Code Playgroud)

javascript promise angularjs

5
推荐指数
0
解决办法
156
查看次数

嵌套forEach:未捕获TypeError:data.forEach不是函数

我不想使用任何for循环或任何常规循环,我试图使用一个,forEach但我收到一个错误

未捕获的TypeError:data.forEach不是函数

return falsyData.map(function(data) {
  data.forEach(function(key) {
    if (key.match(reg)) {
      return key;
    }
  });
});
Run Code Online (Sandbox Code Playgroud)

但如果我这样做,它的工作原理:

return falsyData.map(function(data) {
  for (var key in data) {
    if (key.match(reg)) {
      return key;
    }
  }
});
Run Code Online (Sandbox Code Playgroud)

为什么?

javascript

5
推荐指数
1
解决办法
1万
查看次数