gpt4 book ai didi

javascript - 在 html 中渲染 Angular 时出错

转载 作者:行者123 更新时间:2023-11-28 00:16:22 25 4
gpt4 key购买 nike

我有一个 Angular 项目,在一个 View 中您有一个订单列表,在这些订单中您只能看到标题,一旦您单击该标题,您应该会被 list.id 重定向 到一个新 View ,您可以在其中看到订单的完整内容。

这是您应该看到该订单标题的 html

<a ng-href="#/orders/{{list.id}}" ng-repeat="list in detalleOrden">
<h5>Orden {{list.id}}</h5>
<p>{{list.unidadEjec}}</p>
</a>

这里是 HTML,您可以在其中看到订单的完整内容。观看上面的 HTML ng-href="#/orders/{{list.id}}"

<table class="table">
<tbody>
<tr>
<th>Supervisor</th>
<td ng-bind="list.supervisor"></td>
</tr>
<tr>
<th>Responsable:</th>
<td>{{list.responsable}}</td>
</tr>
<tr>
<th>Solicitante:</th>
<td>{{list.solicitante}}</td>
</tr>
<tr>
<th>Unidad ejecutora:</th>
<td>{{list.unidadEjec}}</td>
</tr>
</tbody>
</table>

因为我没有使用任何 ng-repeat,应该吗?

这里是代码:

$routeProvider
.when('/orders', {
templateUrl: 'views/main.html',
controller: 'OrderDetailsCtrl',
resolve: {
orders: function(Order) {
return Order.list();
}
}
})
.when('/orders/:id', {
templateUrl: 'views/order-detail.html',
controller: 'OrderIdCtrl',
resolve: {
order: function(Order, $routeParams) {
Order.list().then(function(orders) {
for(var i = 0; i < orders.length; i++) {
if(orders[i].id === $routeParams.id) {
return orders[i];
}
}
return null;
});
}
}
})

Controller

  .controller('OrderDetailsCtrl', function ($scope, $routeParams, $log, $rootScope, Order) {

Order.list().then(function(orders) {
$scope.detalleOrden = orders;
}
});

.controller('OrderIdCtrl', function ($scope, $routeParams, $log, $rootScope, Order) {

$scope.order = {};

Order.list().then(function(orders) {
for(var i = 0; i < orders.length; i++) {
if(orders[i].id === $routeParams.id) {
$scope.order = orders[i];
}
}
}, function() {
$log('error');
});
});

这里是服务

  .factory('Order', function ($q) {    
return {
list: function() {
var deferred = $q.defer();

deferred.resolve([{
id: '12423',
title: 'Detalles de la orden',
supervisor: 'Someone',
responsable: 'Someone Else',
solicitante: 'Recope',
unidadEjec: 'Grupo Planificador Belén'
}, {
id: '56456',
title: 'Detalles de la orden',
supervisor: 'Carlos Blabla',
responsable: 'Alberto Blablo',
solicitante: 'Recope',
unidadEjec: 'Grupo VEINSA'
}]);

return deferred.promise;
}
};
});

所以,我的问题是:当我单击订单标题时,我成功重定向到新 View ,但无法可视化内容。

最佳答案

您不需要使用任何ng-repeat

只需使用order即可,看看:

            <table class="table">
<tbody>
<tr>
<th>Supervisor:</th>
<td>{{order.supervisor}}</td>
</tr>
<tr>
<th>Responsable:</th>
<td>{{order.responsable}}</td>
</tr>
<tr>
<th>Solicitante:</th>
<td>{{order.solicitante}}</td>
</tr>
<tr>
<th>Unidad ejecutora:</th>
<td>{{order.unidadEjec}}</td>
</tr>
</tbody>
</table>

关于javascript - 在 html 中渲染 Angular 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30431037/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com