【问题标题】:AngularJs get date from objectAngularJs 从对象获取日期
【发布时间】:2017-11-08 16:22:00
【问题描述】:

谁能帮帮我。我有这个代码:

 <h5>The price for parking is : </h5>{{ticket}} 

付费停车场

这是控制器列表:

$scope.cars=[
{
    plate:'AA45UNW',
    color:'green',
    entrance:new Date()
}
];

按钮功能:

$scope.calculateTicket=function(car){
        console.log("Inside calculateTicket");
        $scope.ticket=parkingFactory._calculateTicket;

    };

这是工厂服务:

app.factory("parkingFactory", function () {
    var _calculateTicket=function(car){
        var x=new Date();
        var departHour=x.getHours();
            $log.log("Depart Hour is :"+ departhour);
        var y=cars.entrance;
        var entranceHour=y.getHours();
            console.log("Entrance Hour is :"+ entranceHour);
        var parkingPeriod=departHour-entrancehour;
        var parkingPrice=parkingPeriod *10;

    return{
        period: parkingPeriod,

        price: parkingPrice

    };  

    };

    return {
        calculateTicket: _calculateTicket
    };


});

但是当我尝试检索 car.entrance 时,它​​说未定义? 如何提取 da Date()? 提前谢谢你

【问题讨论】:

  • 我认为您在parkingFactory 中将var y=cars.entrance; 更改为var y=car.entrance; 中有错字。

标签: javascript angularjs arrays date object


【解决方案1】:

如上所述,您访问错了。

你的 $scope.cars 是一个数组,你不能像现在这样访问它。

有两种处理方式:

解决方案 1: 将其定义为对象而不是数组:

$scope.cars={
plate:'AA45UNW',
color:'green',
entrance:new Date()
}

然后像$scope.cars.entrance一样访问它

解决方案 2

通过提及以下索引以不同方式访问它:

$scope.cars[0].entrance;

【讨论】:

    【解决方案2】:

    $scope.cars 是对象数组。您应该指定索引以从 $scope.cars 访问日期

    例如:

    $scope.cars=[
    {
        plate:'AA45UNW',
        color:'green',
        entrance:new Date()
    }
    ];
    

    您可以使用访问入口

    $scope.cars[0].entrance;
    

    【讨论】:

    • 它在入口处工作。但仍然无法使用票。当我选择一辆车并按 Pay Park 时没有任何反应。
    猜你喜欢
    • 2014-09-17
    • 2012-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-13
    • 2019-11-09
    • 1970-01-01
    相关资源
    最近更新 更多