Angular ng-model来自rootScope的输入

时间:2016-02-26 12:56:25

标签: javascript angularjs

我刚遇到一个简单的角度问题。 我有一个带有占位符的输入字段"用户名"。 如果在$ rootScope中选择了用户并因此可用,则会显示ng-model。

到目前为止这个工作......

 #include<stdio.h>
 #include<stdlib.h>        //malloc defined
struct node       
    {
       int data;
       struct node *next;      
       }*n,*p;

 create()      //add function
  {
      int value;

       n=(struct node*)malloc(sizeof(struct node));  //mem allocation
       printf("enter the value to add\n");
       scanf("%d",&value);
       n->data=value;
       n->next=NULL;

        }  
   add()
   {    
   int value;
//    struct node *p;
     p=(struct node*)malloc(sizeof(struct node));
    printf("enter the value to add next\n");
    scanf("%d",&value);
   n->next=p;
   p->data=value;
   p->next=NULL;

    }    
  delete()     //delete function
  {

          printf("the node deleted is %d",p->data);
           n->next=NULL;
          free(p);   

            }

      display()          //display function
      {

               while(n!=NULL)
                 {
                 printf("%d\n",n->data);
                 n=n->next;

             }
           }             
int main()
{
     int ch;
     while(1)
     {
         printf("do you want to create node press 1\n");
         printf("do you want to add node press 2\n");
         printf("do you want to delete node press 3\n");
         printf("do you want to display node press 4\n");
         printf("do you want to exit press 5\n");
         scanf("%d",&ch);
 switch(ch)
 {
    case 1:create();
           break;

    case 2:add();
           break;

    case 3:delete();
           break;

    case 4:display();
           break;

    case 5:exit(0);


    default: printf("wrong choice!!!\n");                                      

 }
 }
 return 0;
 getch();
 }

视图中的当前输出:

 input type="text" placeholder="Username..." ng-model="user.name + user.id"/>

我想要的是输出:

Username12

有谁知道如何实现这个目标?

提前致谢!

2 个答案:

答案 0 :(得分:2)

由于您可能希望对ng-model元素的值执行某些操作(否则使用不同的只读方法),$watch('user', ...应代表一个简单的变量名称(无计算/连接)

为此,每次<input>对象更改时,都应使用user生成更新的<body ng-controller="MainCtrl"> <input type="text" placeholder="Username..." ng-model="userInput" /> </body> 值。

<强> HTML

app.controller('MainCtrl', function($scope) {
  $scope.user = {
    name: "Marc",
    id: 1
  };

  $scope.userInput = '';

  // ...

  $scope.$watch('user', function(user){
    $scope.userInput = user.name + ' (' + user.id + ')';
  });

});

<强>的javascript

mov ax, 0x1

在线演示

https://plnkr.co/edit/DqjFIiiU8EJmHWUhJdGl?p=preview

答案 1 :(得分:0)

如果需要数据绑定,请使用ng-model。

这里看起来你只想打印(而不是更新)这些值。

然后我建议只使用带打印的简单html标签,而不是在输入中包装数据(以错误的方式)。

例如,您可以对任何html元素执行类似普通绑定的操作:

<span ng-bind="user.name"></span>(<span ng-bind="user.id"></span>)