小编ak8*_*k85的帖子

ng-model抛出角度为1.3的输入类型编号的错误

我有一个输入字段,我希望他用户输入一个数字,所以我创建了一个type ="number"的输入字段.

当我在1.2中使用它时,我没有错误

    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.27/angular.min.js"></script>
    <script>
          var app = angular.module('app', []);
            app.controller('MainCtrl', ['$scope', function ($scope) {
                $scope.person = [
                {"name": "Alex","pts": "10"}
            ];
            }]);
    </script>
        <div ng-app="app">
                <div ng-controller="MainCtrl">
                  {{person | json }}<br>
                  name: <span ng-bind="person[0].name"></span></br>
                  <!-- pts: <input ng-model="person[0].pts"> -->
                  pts: <input type="number" ng-model="person[0].pts"><br?
            </div>
        </div>
Run Code Online (Sandbox Code Playgroud)

http://codepen.io/anon/pen/dPKgVL

但是当我在1.3中使用它时,我得到错误:[ngModel:numfmt]但是当我更新数字时,它似乎仍然绑定到范围.

    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
    <script>
          var app = angular.module('app', []);
            app.controller('MainCtrl', ['$scope', function ($scope) {
                $scope.person = [
                {"name": "Alex","pts": "10"}
            ];
            }]);
    </script>
        <div ng-app="app">
                <div ng-controller="MainCtrl">
                {{person | json }}<br>
                  name: …
Run Code Online (Sandbox Code Playgroud)

javascript html5 angularjs angular-ngmodel

12
推荐指数
3
解决办法
2万
查看次数

mysql子查询中的未知列

我试图得到一个项目的平均值,所以我使用子查询.

更新:我本来应该更清楚,但我希望avg仅用于最后5项

首先我开始

SELECT 
y.id
FROM (
    SELECT *
        FROM (
                SELECT *
                FROM products
                WHERE itemid=1
        ) x  
    ORDER BY id DESC
    LIMIT 15 
) y;
Run Code Online (Sandbox Code Playgroud)

哪个运行但是相当无用,因为它只是向我展示了ID.

然后我在下面添加了

SELECT
y.id,
(SELECT AVG(deposit) FROM (SELECT deposit FROM products WHERE id < y.id ORDER BY id DESC LIMIT 5)z) AVGDEPOSIT
FROM (
    SELECT *
        FROM (
                SELECT *
                FROM products
                WHERE itemid=1
        ) x  
    ORDER BY id DESC
    LIMIT 15 
) y;
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我在'where子句'中得到错误未知列'y.id',在进一步阅读这里我相信这是因为当查询进入下一级时,它们需要加入?

所以我尝试了以下**删除了不需要的suquery

SELECT
y.id, …
Run Code Online (Sandbox Code Playgroud)

mysql sql join subquery

10
推荐指数
2
解决办法
5335
查看次数

角度计时器指令不适用于离子框架

我在使用离子框架实现angular timer指令时遇到了问题. http://siddii.github.io/angular-timer/

当我使用bower或google cdn实现代码时,我没有任何问题.

    <!DOCTYPE html>
    <html>
    <head>
    <title>Plain Javascript Timer Example</title>
    <script src="../bower_components/angular/angular.min.js"></script>
    <script src="../app/js/timer.js"></script>
    <script>
    function startTimer() {
    document.getElementsByTagName('timer')[0].start();
    }
    function stopTimer() {
    document.getElementsByTagName('timer')[0].stop();
    }
    </script>
    </head>
    <body>
    <div>
    <h2>Plain JavaScript - Timer Example</h2>
    <h3><timer ng-app="timer"/></h3>
    <button onclick="startTimer()">Start Timer</button>
    <button onclick="stopTimer()">Stop Timer</button>
    </div>
    <br/>
    </body>
    </html>
Run Code Online (Sandbox Code Playgroud)

但是,当我使用离子束 http://code.ionicframework.com/1.0.0-beta.13/js/ionic.bundle.js时, 我无法让计时器工作.并且似乎没有在控制台中出现任何错误.

这是一个已知的问题?

什么会阻止它工作?

是否有人们可以推荐的备用计时器?这个对我来说似乎最好?

javascript timer angularjs ionic-framework angular-directive

10
推荐指数
1
解决办法
5656
查看次数

使用es6创建使用react native的计时器

我希望为我的应用程序添加一个计时器,它使用react native.

我已经查看了文档中的计时器mixin的链接,但是我使用es6构建了应用程序的其余部分,因此这将不兼容.

我试过以下.

在我的Main类中,我有一个名为的函数 getTimerCountDown

getTimerCountDown() {
    setTimeout(() => {
      this.setTimeRemaining(this.getTimeRem()-1);
    }, 1000);
}

getTimeRem() {
    return this.state.timeRemaining;
}
Run Code Online (Sandbox Code Playgroud)

我试过调用它,componentDidUpdate如下所示.如果我不与UI进行任何其他交互,这就像我想要的那样.

如果我这样做(例如,我有一个按钮,我可以点击视图.)当`componentDidUpdate被再次调用时,conunter变得非常快(因为它被称为x次)

componentDidUpdate(){
    this.getTimerCountDown();
}
Run Code Online (Sandbox Code Playgroud)

我不确定我是否完全走错了轨道,或者对我所做的一些小改动可以得到我想要的东西.使用es6让倒数计时器在本机中工作的最佳方法是什么?

主页上的计时器类

<Timer timeRem={this.getTimeRem()} />
Run Code Online (Sandbox Code Playgroud)

回报

render(){
    return (
        <View style={styles.container}>
            <Text> This is the Timer : {this.props.setTimer}  - {this.props.timeRem} </Text>
        </View>
    )
}
Run Code Online (Sandbox Code Playgroud)

javascript facebook ios reactjs react-native

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

无法使用RecursiveDirectoryIterator跳过不可读的目录

我想得到所有子目录的列表,我的下面的代码工作,除非我对某些文件夹具有只读权限.

在下面的问题中,它显示了如何使用RecursiveDirectoryIterator跳过目录 我可以使RecursiveDirectoryIterator跳过不可读的目录吗?但是我的代码在这里略有不同,我无法解决问题.

$path = 'www/';
foreach (new RecursiveIteratorIterator(
       new RecursiveDirectoryIterator($path,RecursiveDirectoryIterator::KEY_AS_PATHNAME),
            RecursiveIteratorIterator::CHILD_FIRST) as $file => $info) 
            {
                if ($info->isDir())
                {
                       echo $file . '<br>';                     
                }
            }   
Run Code Online (Sandbox Code Playgroud)

我收到了错误

Uncaught exception 'UnexpectedValueException' with message 'RecursiveDirectoryIterator::__construct(../../www/special): failed to open dir: Permission denied'
Run Code Online (Sandbox Code Playgroud)

我试过用另一个问题中接受的答案替换它.

new RecursiveIteratorIterator(
new RecursiveDirectoryIterator("."), 
RecursiveIteratorIterator::LEAVES_ONLY,
RecursiveIteratorIterator::CATCH_GET_CHILD);
Run Code Online (Sandbox Code Playgroud)

但是这段代码不会给我一个像我想要的www里面所有目录的列表,我在哪里错了?

php directory directory-walk

9
推荐指数
1
解决办法
5285
查看次数

angularjs显示ng-repeat列表中的最后5项

我有一个列表,记录我选择的先前名称,如下所示.我想要的是列表总是只显示最后5个结果,但是我现在所拥有的是以最新的第一个按顺序显示前5个.怎么能实现这一目标?

http://jsfiddle.net/sfqo2fn3/1/

    <div ng-controller="MyCtrl">
        <input type="text" ng-model="updatedname" />
        <input type="button" value="Change name" ng-click="changeName(updatedname)"/>
        <br/>
          Hello, {{name}}!
    <ul>
        <li ng-repeat="name in nameLog | limitTo:5 | orderBy:'time':true">{{name.value}} - {{name.time}}</li>
    </ul>    
    </div>

    var myApp = angular.module('myApp',[]);
    myApp.factory('UserService', function() {
                var _nameLog = [];
                var userService = {};
                userService.name = "John";
                userService.ChangeName = function (value) {
                    userService.name = value;
                };
                userService.logName  = function (value) {
                    _nameLog.push ({
                        "value":value,
                        "time" :Date.now()
                    });
                };
                userService.getNameLog = function(){ return _nameLog; }
        return userService;
    });

    function MyCtrl($scope, UserService) …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs angularjs-ng-repeat

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

托管多个站点的firebase配置.firebaserc文件

我的Firebase托管在我的项目中成功运行,但是我想对子域上的其他站点使用相同的数据库,所以我想我会在Firebase托管上单击添加另一个站点。

我可以毫无问题地为域配置a记录等,但是在将内容部署到辅助站点时遇到了麻烦。

例如,如果我运行firebase init并按照提示操作.firebaserc,则我的主项目和子项目的外观都相同。

{
  "projects": {
    "default": "<project-name-here>"
  }
}
Run Code Online (Sandbox Code Playgroud)

有没有办法告诉文件您要部署到哪个托管站点?我在这里看到了对多个数据库的引用,但是我认为这与我要执行的操作无关吗?

firebase firebase-hosting

8
推荐指数
1
解决办法
2911
查看次数

找到sql中两个组合列的平均值

我想找到总共两列的平均值.我想计算col1的总数和col2的总数然后找到平均值(它们所处的行数).

我已经设法在这个sqlfiddle中找到了解决方案(也见下文)这是最好的方法吗?我最初认为我需要使用avg函数,但无法使用它.

    CREATE TABLE test (
        id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
        uid INT,
        col1 INT,
        col2 INT
    ) DEFAULT CHARACTER SET utf8 ENGINE=InnoDB;

    INSERT INTO test (id, uid, col1, col2) VALUES
    (1,5,8,12),
    (2,1,2,3),
    (3,1,2,33),
    (4,5,25,50),
    (5,5,22,3);

    (
    SELECT ((sum(col1) + sum(col2))/count(*))
    FROM test
      WHERE uid=5
    )
Run Code Online (Sandbox Code Playgroud)

mysql sql average count

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

IE 11将成为Google Analytics中的Mozilla

我在Google Analytics中查看我的网站数据,并在浏览器版本下注意到Internet Explorer v11下没有数据显示.但是,如果我看看Mozilla正在为第11版获取数据.似乎所有IE 11数据都是在Mozilla而不是Internet Explorer下传播的.有没有什么可以作为用户在这里完成或我们只是等待谷歌调整?

internet-explorer google-analytics internet-explorer-11

7
推荐指数
1
解决办法
2633
查看次数

仅在JS中定位多个选择器

我试图在没有jQuery的情况下在我的网站上实现点击事件.

我想针对多个选择器.

在jQuery中,这可以通过简单的逗号分隔项目来完成,如下所示.

jQuery(document).on('click', '#test1, #test2', function (event) {
    alert($(this).text());
});
Run Code Online (Sandbox Code Playgroud)

如何在普通的javascript中轻松完成?

我已经尝试了下面的工作,但似乎应该有一个更简单的方法,特别是如果我想要点击以上发出警报?我想针对多个特定的选择器,而不是所有的div

var test1 = document.getElementById('test1');
var test2 = document.getElementById('test2');

if (test1.addEventListener || test2.addEventListener) {
    test1.addEventListener('click', function(event) {
        alert(this.innerHTML);
    });
    test2.addEventListener('click', function(event) {
        alert(this.innerHTML);
    });

    /* this only works when you click on test2
    (test1,test2).addEventListener('click', function(event) {
        alert(this.innerHTML);
    });
    */
    /* this only works when you click on test2
    (test1.addEventListener),(test2.addEventListener)('click', function(event) {
        alert(this.innerHTML);
    });        
    */
}
Run Code Online (Sandbox Code Playgroud)

    var test1 = document.getElementById('test1');
    var test2 = document.getElementById('test2');
    if (test1.addEventListener || test2.addEventListener) { …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery

7
推荐指数
2
解决办法
7425
查看次数