Angularjs 角度返回[对象]

Angularjs 角度返回[对象],angularjs,Angularjs,我的角度代码返回[object]。我正在呼叫不同页面上的2个控制器。第一个在单击时设置数据,第二个获取(显示)数据。代码如下: 角度应用程序代码: var careerApp = angular.module("careerApp", []); careerApp.factory('myService', function () { var savedData = {}; function set(data) { savedData = data;

我的角度代码返回[object]。我正在呼叫不同页面上的2个控制器。第一个在单击时设置数据,第二个获取(显示)数据。代码如下:

角度应用程序代码:

    var careerApp = angular.module("careerApp", []);
careerApp.factory('myService', function () {
    var savedData = {};
    function set(data) {
        savedData = data;
    }
    function get() {
        return savedData;
    }

    return {
        set: set,
        get: get
    }
});
careerApp.controller("JobList", function ($scope,myService) {
    myService.set(data);
});
careerApp.controller("JobSelection", function ($scope, myService) {
    $scope.jobname = myService.get();
});
第1页上的HTML

<div class="center-details" ng-controller="JobList">
<div class="details" ng-click="set(data)" >
<h2 class="name" ng-model="jobtitle">
Winter
</h2>
<p><b>Job ID#</b> <span class="jobid">2017-01</span></p>
</div>
</div>

冬天
工作编号#2017-01

第2页的HTML

<div ng-controller="JobSelection">
<label ng-bind="jobname"></label>
</div>

您正在将整个对象引入

<label ng-bind="jobname"></label>

如果要使用更好的格式写入对象,请尝试将其更改为:

<label> {{ jobname | json }}</label>
{{jobname | json}

通过这种方式,它将被格式化并打印为json对象。

您正在将整个对象引入

<label ng-bind="jobname"></label>

如果要使用更好的格式写入对象,请尝试将其更改为:

<label> {{ jobname | json }}</label>
{{jobname | json}

通过这种方式,它将被格式化并打印为json对象。

使用ng bind中的角度表达式。否则,必须指定对象的特定属性

第1页

<div class="center-details" ng-controller="JobList">
<div class="details" ng-click="set('Winter')" >
<h2 class="name">
Winter
</h2>
<p><b>Job ID#</b> <span class="jobid">2017-01</span></p>
</div>
</div>
第2页

<label ng-bind="jobname"></label>
<label>{{jobname}}</label>
注意事项:

    var careerApp = angular.module("careerApp", []);
careerApp.factory('myService', function () {
    var savedData = {};
    function set(data) {
        savedData = data;
    }
    function get() {
        return savedData;
    }

    return {
        set: set,
        get: get
    }
});
careerApp.controller("JobList", function ($scope,myService) {
    myService.set(data);
});
careerApp.controller("JobSelection", function ($scope, myService) {
    $scope.jobname = myService.get();
});
考虑到
ng model
指令将输入、选择、文本区域值绑定到范围上的属性

因为在控制器定义中有此赋值

$scope.jobname = myService.get();

如果在用户单击之前运行此控制器,它将为空。它不会在每次单击时刷新。

使用角度表达式,而不使用ng bind。否则,必须指定对象的特定属性

第1页

<div class="center-details" ng-controller="JobList">
<div class="details" ng-click="set('Winter')" >
<h2 class="name">
Winter
</h2>
<p><b>Job ID#</b> <span class="jobid">2017-01</span></p>
</div>
</div>
第2页

<label ng-bind="jobname"></label>
<label>{{jobname}}</label>
注意事项:

    var careerApp = angular.module("careerApp", []);
careerApp.factory('myService', function () {
    var savedData = {};
    function set(data) {
        savedData = data;
    }
    function get() {
        return savedData;
    }

    return {
        set: set,
        get: get
    }
});
careerApp.controller("JobList", function ($scope,myService) {
    myService.set(data);
});
careerApp.controller("JobSelection", function ($scope, myService) {
    $scope.jobname = myService.get();
});
考虑到
ng model
指令将输入、选择、文本区域值绑定到范围上的属性

因为在控制器定义中有此赋值

$scope.jobname = myService.get();


如果在用户单击之前运行此控制器,它将为空。它不会在每次单击时刷新。

您从何处获取[对象]?在控制台或html中?@ManuelObregozo在HTMLWhere获得[object]?在控制台或HTMLB中的html?@ManuelObregozo中,通过这样做,它将输出为“{}”,这是因为数据对象为空。你想保存什么?我想保存jobtitle,请参考上面第1页的HTML代码,其中的值是Winter。我想将该值存储在ng click上,并将其传递到第2页的第2个控制器上,并显示在jobname BindingYou上,此时缺少一些内容。您希望它成为一个输入吗?或者仅仅是一个静态值?仅仅是一个静态值通过这样做,它将输出为“{}”,这是因为数据对象是空的。你想保存什么?我想保存jobtitle,请参考上面第1页的HTML代码,其中的值是Winter。我想将该值存储在ng click上,并将其传递到第2页的第2个控制器上,并显示在jobname BindingYou上,此时缺少一些内容。您希望它成为一个输入吗?或者仅仅是一个静态值?仅仅是一个静态值通过这样做,它将输出为“{}@user2185457”,然后只更改
myService.set(数据)到f.e.
myService.set('text')也这样做,它将输出为“{}@user2185457”,然后只需更改
myService.set(数据)到f.e.
myService.set('text')