Javascript 使用AngularJS在控制器中传递数据

Javascript 使用AngularJS在控制器中传递数据,javascript,angularjs,Javascript,Angularjs,我的应用程序中有两个视图。我想将第一视图输入传递给我的第二视图占位符。我在下面创建了一个服务 .service('greeting', function Greeting() { var greeting = this; greeting.message = 'Default'; }) .controller('LogonController', function LogonController(greeting) { var first = this; fir

我的应用程序中有两个视图。我想将第一视图输入传递给我的第二视图占位符。我在下面创建了一个服务

.service('greeting', function Greeting() {

    var greeting = this;

greeting.message = 'Default';

})

.controller('LogonController', function LogonController(greeting) {
    var first = this;

    first.greeting = greeting;
})

.controller('VideoController', function VideoController(greeting) {
    var second = this;

    second.greeting = greeting;

});
下面是我使用不同控制器的两个不同视图

<div ng-controller="LogonController as first">
    <form>
        <input type="text" data-ng-model="first.greeting.message" placeholder="{{ first.greeting.message }}"> //1ST VIEW
    </form>
</div>

<div ng-controller="VideoController as second">
    <h1>{{ second.greeting.message }}</h1>
<div> //2ND VIEW

//第一视图
{{second.greeting.message}
//第二视图
在我输入之前,我希望在我的第一个表单视图中得到一个带有默认消息的占位符


我该如何让它工作。

可能您正在测试的任何浏览器都不喜欢在未关闭的
中添加
视频控制器的位置:

<div ng-controller="VideoController as second">
    <h1>{{ second.greeting.message }}</h1>
<div> <-- this should be a closing /div

到底是什么不起作用?您将无法获得灰显占位符文本,因为您还有设置输入值的
data ng model=“first.greeting.message”
。我希望实现的是获得在第一个视图中输入的输入文本,以便在第二个视图中显示。例如,如果我输入我的名字,它应该显示在第二个视图中。我希望我说的有道理。如果它对您不起作用,那么控制台中一定有某种错误。我刚刚尝试了您在JSFIDLE中提供的代码,效果很好。控制台中没有出现错误@莱克斯,你能帮我提供JSFIDLE链接吗?
<div ng-app="app">
    <div ng-controller="LogonController as first">
        <form>
            <input type="text" data-ng-model="first.greeting.message" placeholder="{{ first.greeting.message }}">
        </form>
    </div>

    <div ng-controller="VideoController as second">
        <h1>{{ second.greeting.message }}</h1>
    </div>
</div>
angular.module('app', [])
    .service('greeting', function Greeting() {
        var greeting = this;
        greeting.message = 'Default';
    })
    .controller('LogonController', function LogonController(greeting) {
        var first = this;
        first.greeting = greeting;
    })
    .controller('VideoController', function VideoController(greeting) {
        var second = this;
        second.greeting = greeting;
    });