将 Javascript 函数转换为 AngularJS 函数
Convert Javascript function to AngularJS function
我写了一个简单的javascript函数,可以在两个div元素之间切换。这样:
function goToResults() {
document.getElementById("services").style.display = "none";
document.getElementById("results").style.display = "block";
}
当我学习Angular时,我想在app.js中将其转换为Angular函数。我可以执行以下操作吗?
$scope.goToResults = function () {
$scope.getElementById("services").style.display = "none";
$scope.getElementById("results").style.display = "block";
}
谢谢!
您提供的代码段存在一些问题。
首先,没有AngularJS只有函数这样的东西。它们与任何其他JavaScript函数相同。如果你想在AngularJS的作用域中使用"javascript"函数,你可以执行以下操作:
function goToResults() {
...
}
$scope.goToResults = goToResults;
其次,在控制器内部处理 DOM 操作被认为是一种不好的做法。请改用指令。
第三,据我了解,您想根据某些事件显示或隐藏div。有一些内置功能可以做到这一点(ng-show,ng-hide,ng-if)。
你似乎缺乏一些关于Javascript和AngularJS的基础知识,我建议你通过Angular自己的文档 https://docs.angularjs.org/tutorial 给出的教程
技术上可以使用
$scope.goToResults = function () {
document.getElementById("services").style.display = "none";
document.getElementById("results").style.display = "block";
}
但是,这不是一种非常"有棱角"的方式。在对这个问题的回答中描述了一条更"棱角分明"的路线。一般来说,提及特定元素不是"棱角分明"的方式;相反,它试图拥有一组JavaScript实用程序,可供(处理的)HTML使用,例如指令,它们本质上是在HTML中使用的新元素或属性。指令的实现与使用这些属性或元素所修改的元素没有直接耦合,这使得 angular 更容易重用,并且在我和许多其他人看来,一旦你习惯了它,就更容易阅读和编写。
相关文章:
- 存储$http如何从$http函数(Angularjs)外部获取可访问变量中的响应
- 使用OnClick函数(AngularJS)创建指令
- Promise创建自定义失败不是函数Angularjs错误
- 在文本点击时调用一个函数:AngularJS
- 参数不是函数-AngularJS未定义
- 获取类型错误:未定义不是函数 AngularJS
- 使用相同的函数 AngularJS 进行多表排序
- 两个不同视图上的两个按钮调用相同的函数 AngularJS
- .all()在解析函数AngularJS中
- 在UI中显示链接函数angularJs的数据
- TypeError:未定义不是函数-AngularJS
- 解析函数AngularJS超时
- 执行一个特定时间段的函数-AngularJs
- jQuery.AngularJS中的ajaxStart等效函数| AngularJS中的Ajax事件处理程序
- isValid表单验证,然后运行函数AngularJS
- 在所有控制器中对同一个事件执行同一个函数——AngularJS
- "未捕获的TypeError: undefined不是函数" AngularJS-BreezeJS
- 从控制器到外部函数angularjs的对象访问
- 如何在指令链接函数angularjs中显示来自对象的数据
- 使用$scope.$parent.$$childHead从控制器访问指令函数.AngularJS中的functionNa