为什么我无法在我的视图中看到这个变量
Why am I unable to see this variable in my view?
这是我路由器的相关段:
应用.js
.state('app.browse', {
url: "/browse/:question",
controller: 'QCtrl',
resolve: {
question: function($stateParams, qService){
console.log(qService.getQuestion($stateParams.question).q);
return qService.getQuestion($stateParams.question).q;
}
},
views: {
'menuContent': {
templateUrl: "templates/browse.html"
}
}
})
/* QSERVICE HERE */
.factory('qService', function() {
var questions = [ {'q': "text text"} ];
return {
questions: questions,
getQuestion: function(index) {
return questions[index]
}
}
})
控制器.js
.controller('QCtrl', function($scope, question){
$scope.questions = qService.questions;
$scope.question = question;
})
它准确地找到了我正在寻找的内容,如控制台日志所示。
但是在我的浏览器视图中,我无法获取question
变量!
浏览器.html
<ion-view view-title="Browse">
{{question}}
</ion-content>
始终显示为空!为什么会发生这种情况,我该如何解决?
Resolve不会将问题绑定到您的控制器。
在您的控制器中执行此操作
.controller('QCtrl', function ($scope, question) {
$scope.question = question;
})
此外 - 在您的状态对象中,问题传递不正确。校正:
.state('app.browse', {
url: "/browse/:question",
resolve: {
question: function($stateParams, qService){
return qService.getQuestion($stateParams.question);
}
},
views: {
'menuContent': {
templateUrl: "templates/browse.html",
controller: 'QCtrl',
}
}
})
状态对象中还缺少模板 URL。更新它以反映模板的位置,应该很好:)
相关文章:
- 为什么不't我的变量在我的控制器中填充后在我的视图中呈现
- 如何在渲染视图时将变量传递给Node.js中的脚本标记
- 如何访问Web2py'中python代码中的JavaScript变量;s视图
- 在Django中,可以在视图中创建一个包含js的变量,然后在循环模板标记中使用它
- 如何将Laravel变量传递到我的AngularJS视图中
- AngularJS更新控制器变量并再次渲染视图
- 使用hidden_field_tag助手将JavaScript变量的值传递到Rails视图
- 无法将对象列表从视图模型设置为 javascript 变量
- 为什么我无法在我的视图中看到这个变量
- 在MVC视图中的变量中使用javascript 从@模型中提取
- 使用*ngIf+模板变量+loadIntoLocation以编程方式将组件加载到视图中
- 范围变量更新,但不更新视图
- 更新后,父视图未在 Electron 中的
上设置全局变量 - 如何在rails视图中定义gon变量(瘦文件)
- MVC6将视图模型列表属性分配给javascript变量
- 将视图中的JavaScript变量值分配给控制器变量
- 将全局变量从控制器调用到HTML视图AngularJS
- 在MVC视图和DateTimePicker中设置会话变量
- MVC 5视图-设置Javascript变量
- 从JavaScript在ExpressJS中设置视图变量