2017-06-26 6 views
0

質問がありますangeljsでinit()によってnodejsから値を入れようとしましたが、後で$ scope.productに入れました。表示しようとしたときに問題があります: node:ノードによって送信されたオブジェクトの値を表示する方法

return res.render('product/product', { title: 'Express', product: products }); 

角度:

<body ng-controller="productsController" ng-init="productView('<%= product %>')"> 
     <% include ../share/header.ejs %> 

{{ product.title }} 
{{ product.price }} 
    </body> 

コントローラ:

$scope.productView = function (product) { 
    $scope.product = JSON.parse(product); 
    console.log(product); 
}; 

Error: [$parse:syntax] Syntax Error: Token 'bf' is unexpected, expecting [)] at column 55 of the expression [productView('{ _id: 5950c8902a76e81b5cc56a6f, title: 'bf', price: 7, __v: 0 }')] starting at [bf', price: 7, __v: 0 }')].

答えて

0

product: products - 個々のオブジェクトの代わりにオブジェクトの配列を渡すことは可能です。そのような場合は、res.render呼び出しをサーバー上で1つの製品のみを渡すように変更するか、クライアント側のコードを変更して配列を想定し、ngRepeatなどを使用して反復処理します。

0

あなたは、単に

<body ng-controller="productsController" ng-init="product='<%= product %>'"> 

{{ product.title }} 
{{ product.price }} 
を試してみてください、のProductViewの機能を必要といけません
関連する問題