当前位置: 首页 > 知识库问答 >
问题:

在controller上下文中,$scope与此有何[副本]

易焱
2023-03-14
app.controller("TestController", function() {
    this.printable = "Hello, World";
});
<div ng-controller="TestController as test">
    <h1>{{ test.printable }}</h1>
</div>
app.controller("TestController", ["$scope", function($scope) {
    $scope.printable = "Hello, World";
});

这两种方法有什么不同?

共有1个答案

公羊奇
2023-03-14

区别在于与之交互的对象的范围。$scope是注入到控制器中的对象。您的控制器是一个对象,代表您的角度应用程序的给定部分。

在Angular的早期,控制器不是对象。他们现在是。

无论哪种方式都可以(如果您关心哪种方式是正确的),但是控制器作为要稍微简洁一些。

 类似资料:
  • 在下面的代码示例中,做什么:

  • 我试图将我的XSD验证为有效的XSD(与针对XML的验证相反),但我得到以下错误: XmlSchema错误:元素http://www.w3.org/2001/XMLSchema:简单类型在此上下文中无效。第6行,位置17。相关模式项SourceUri:虚拟://server/schema.xsd,第4行,位置12。 我一直在研究它,但我发现的一切都让我认为我的观点是正确的——所以这可能是一些明显而

  • 问题内容: 我想知道angularjs中“ Controller as”或“ $ scope”语法之间的主要区别是什么。 它们是否会对性能产生影响,如果可以,则首选哪种语法。 “控制器为”语法肯定会提高代码的可读性,因为Knockout.js和其他JavaScript框架遵循相同的语法。 $ scope将提供范围继承,有时会给我们带来奇怪的行为,例如 a)最初child将获得parent属性,并且

  • 问题内容: 您能帮我用下面的代码吗?错误是: “不能在静态上下文中使用此” 问题答案: 参见,“ this”关键字指的是当前对象,这是由于正在执行哪种方法。不能使用类的实例调用静态方法。这就是为什么不能在上面的示例中以静态方法使用“ this”的原因,因为它试图打印当前未创建的当前实例。因此,我认为这就是为什么您会遇到编译时错误。

  • 问题内容: 我将存储过程存储在asp.net应用程序中,如下所示: 但是在选择单词上说之后,我收到错误消息:- 错误SQL70001:在此上下文中无法识别此语句 好的,我认为使用Go word存在问题。当我搜索时,找到了解决方案,但在asp.net网站上没有asp.net应用程序。我在这里找到了解决方案,但在asp.net应用程序中找不到脚本文件。我可以在asp.net网站上找到它。我能做些什么

  • 我有存储过程asp.net应用程序如下: 但是我收到错误消息后 Go 单词在选择说: - 错误SQL70001:在此上下文中无法识别此语句 好的,我认为有使用Go word的问题 当我搜索时,我找到了解决方案,但在 asp.net 网站上没有 asp.net 应用程序。我在这里找到了解决方案,但我在 asp.net 应用程序中找到脚本文件。只是我可以在 asp.net 网站上找到它。我该怎么办?