Javascript 更改页面中的对象值时出现问题,但在控制台日志中显示为正在工作(angularjs)

Javascript 更改页面中的对象值时出现问题,但在控制台日志中显示为正在工作(angularjs),javascript,html,angularjs,logic,Javascript,Html,Angularjs,Logic,我想根据用户单击的内容更改对象变量mF,这将从对象数组中为变量mF分配一个对象,并将它们带到下一个“页面” 我使用ng click通过一个函数将对象分配给mf。我正在使用{{mF.name}来测试一个新对象是否已分配给mF,并且我一直在画一个空白(没有输出到页面)。但是,当我在控制器中手动分配对象并使用console.log()输出时,它就工作了。为什么不输出到页面 代码: app.js: app.controller('DeviceController', function($scope) {

我想根据用户单击的内容更改对象变量
mF
,这将从对象数组中为变量
mF
分配一个对象,并将它们带到下一个“页面”

我使用ng click通过一个函数将对象分配给
mf
。我正在使用
{{mF.name}
来测试一个新对象是否已分配给
mF
,并且我一直在画一个空白(没有输出到页面)。但是,当我在控制器中手动分配对象并使用
console.log()
输出时,它就工作了。为什么不输出到页面

代码:

app.js:

app.controller('DeviceController', function($scope) {

$scope.showOptions = false;

var device1 = [
    {
        name: 'PC',
        os: 'Windows',
        chosen: false,
    },
  ...
  ];

var device2 = [
  {...}
  ...
];

var mF = {};

$scope.mF = mF;

console.log(mF);

function calculate (x) {
    mF = device1[x];
}

mF = device1[0];

console.log(mF.name); //outputs correctly in console - "PC"

});
HTML:


赢
Mac测试
这是第二页:{{mF.name}

返回
您还需要将函数
calculate
附加到作用域,以便从视图绑定调用它

因此,请尝试:

$scope.calculate = function calculate (x) {
    $scope.mF = device1[x];
}

成功了,谢谢!您知道为什么
console.log()
不需要
$scope
$scope.calculate = function calculate (x) {
    $scope.mF = device1[x];
}