标签: 2-way-object-databinding

聚合物组件间数据绑定?

我有一个登录组件,我想让我的应用程序中的其他组件可以使用登录状态.

有人可以提供工作代码或示例吗?

我至少需要某种绑定或事件,这样当登录状态改变时,这些其他感兴趣的组件的UI可以相应地更新.

javascript data-binding 2-way-object-databinding polymer polymer-1.0

5
推荐指数
1
解决办法
1465
查看次数

JavaScript:通过从字符串中检索变量名来更新对象值

我有一个JavaScript对象,看起来像这样.

var myObj = [
  {
    "HOLIDAY": {
      "Sun": "Date",
      "Mon": "Date",
      "Tue": "Date",
      "Wed": "Date",
      "Thr": "Date",
      "Fri": "Date",
      "Sat": "Date"
    }
  }
]
Run Code Online (Sandbox Code Playgroud)

我有一些HTML代码,看起来像这样

    <input data-event="change" 
           data-variable="myObj" 
           data-bind="[0]['HOLIDAY']['Sun']" 
           type="text">
Run Code Online (Sandbox Code Playgroud)

在HTML上,如果我对该字段进行任何更改,我已经存储了要修改的JavaScript变量.我编写了类似这样的JavaScript代码.

$(document).on('change', '[data-event= change]', function(){
    //get-variable-name where to bind data
    //Get object location inside the variable
    var sVarName = $(this).data('variable');
    var sObjLoca = $(this).data('bind');
    eval(sVarName+sObjLoca +' = ' $(this).val());
});
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法来解决这个问题,目前我正在使用eval()我不想使用的方法,因为许多元素都会有'change'事件而show'eval'会影响我的代码的性能.

html javascript jquery eval 2-way-object-databinding

5
推荐指数
1
解决办法
120
查看次数

Android数据绑定错误

我有两种方式数据绑定可观察在最后更新的sdk我有这样的问题.曾经遇到过这个?

Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
> android.databinding.tool.util.LoggedErrorException: Found data binding errors.
  ****/ data binding error ****msg:Cannot find the getter for attribute 'android:text' with value type java.lang.String on android.support.design.widget.TextInputEditText.
  file:C:\Users\Tom\Desktop\projects\androidstudio\work_projects\projects\app\src\main\res\layout\medcard_edit.xml
  loc:83:20 - 95:53
  ****\ data binding error ****
  ****/ data binding error ****msg:Cannot find the getter for attribute 'android:text' with value type java.lang.String on android.widget.EditText.
  file:C:\Users\Tom\Desktop\projects\androidstudio\work_projects\novamed\novamed_android\app\src\main\res\layout\activity_address_picker.xml
  loc:42:12 - 48:36
  ****\ data binding error ****
  ****/ data binding error ****msg:Cannot find the getter for attribute 'android:text' with value type java.lang.String on …
Run Code Online (Sandbox Code Playgroud)

android 2-way-object-databinding

5
推荐指数
1
解决办法
1265
查看次数

如何使用TwoWay模式将Listview SelectedItem绑定到文本框?

我是WPF的新手,并测试了一些我想要包含在我将要处理的应用程序中的内容.我有一个2行ListView(绑定到文本框),其中包含Scott Guthrie和Jon Skeet的名字.我试图在ListView中选择"Scott Guthrie"并让它填充TextBox.我希望能够编辑文本和选项卡并更新ListView.

编辑:我删除了代码,因为它确实没有添加任何问题.

wpf listview 2-way-object-databinding

4
推荐指数
2
解决办法
3万
查看次数

Angular:将对象绑定到<select>

首先,我应该说我现在只攻击了Angular.js 2天,所以我可能正在接近这件事.

我的示例"Person"对象(或模型,如果我理解)有两个属性,Firstname和Title.我有两个<select>标题和<input type="text" />名称字段.Firstname绑定工作正常,我很高兴,但标题令我困惑.

我用Code和Desc绑定一个对象数组,它填充得很好.但是当我想要(在提交时)或设置(在加载时)它不起作用,因为绑定使用整个标题对象.

http://jsfiddle.net/qm7E7/11/

(单击"下一步"以显示序列化对象.)

HTML

<div ng-app ng-controller="PersonCtrl">
    <form name="myForm" ng-submit="submit()">
        Title: <select ng-model="Person.Title" ng-options="t.Desc for t in TitleList">
        <option style="display: none" value="">Please select</option>
    </select>
        <br/>
    Firstname: <input type="text" ng-model="Person.Firstname" />      
        <br/>
        <input type="submit" value="Next" />
        <br/>
        <div id="obj"></div>
    </form>
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js">
Run Code Online (Sandbox Code Playgroud)

JS

// Person controller
function PersonCtrl($scope) {
    $scope.TitleList = [{Code: 'MR', Desc: 'Mr'},
                       {Code: 'MRS', Desc: 'Mrs'}]

    $scope.Person = {
        Firstname: 'dave',
        Title: 'MR'
    };

    $scope.submit = function () …
Run Code Online (Sandbox Code Playgroud)

javascript 2-way-object-databinding angularjs

4
推荐指数
1
解决办法
7650
查看次数

在Polymer 1.x中绑定到[[var]]和{{var}}之间的区别是什么?

我熟悉大括号的绑定,比如{{variable}}Polymer 0.5.

但是,在Polymer的发布版本的示例和代码片段中,我开始注意到带有方括号的绑定,例如[[variable]].

难道{{variable}}现在的意思是不同的东西,或者是相同的,[[variable]]仅仅是一个加法?绑定到聚合物[[variable]]{{variable}}聚合物之间有什么区别?

data-binding 2-way-object-databinding polymer polymer-1.0

4
推荐指数
1
解决办法
867
查看次数

数据绑定不适用于大写字母包名称

我有一个Android项目,它的包名称有点像这个com.example.MyPackage,其中asMyPackage有两个大写字母MP,由于它们我无法使用数据绑定。

当我添加数据绑定并构建我的项目时,它说无法猜测名称。我发现在 stackover flow 上有人讨论这是因为包名称中有大写字母。

java android 2-way-object-databinding kotlin package-name

4
推荐指数
1
解决办法
504
查看次数

如何在Polymer中反映从子到父的变化

目前的代码如下.我在主文件中有元素值.此值将传递给子元素app-element,并从那里传递到app-element-add.

app-element-add中的值会发生变化.但我无法获得主要元素中反映的价值.

观察员永远不会被调用.

main.html中

<app-element element-value = {{ elementValue }}></app-element>

Polymer({

  is: 'app-main-element',

  properties: {
    elementValue: {
      type:Array,
      notify:true,
      observer:'listUpdated'
    } 
  });
Run Code Online (Sandbox Code Playgroud)

APP-element.html

<app-element-add element-value = {{ elementValue }}></app-element-add>
 Polymer({

  is: 'app-element',

  properties: {
    elementValue: {
      type:Array,
      notify:true,
      observer:'listUpdated'
    } 
  });
Run Code Online (Sandbox Code Playgroud)

APP-元件add.html

Polymer({

  is: 'app-element-add',

  properties: {
    elementValue: {
      type:Array,
      notify:true,
      reflectToAttribute:true
    } 
  });
Run Code Online (Sandbox Code Playgroud)

关于如何在app-main-element中反映app-element-add中的更改的任何提示.谢谢.

2-way-object-databinding polymer polymer-1.0

3
推荐指数
1
解决办法
2661
查看次数

如何测试Angular 2双向绑定输入值

我正在尝试为我的组件编写测试来测试角度双向绑定是否正常工作.

在一方面,我有一个看起来像那样的测试(它通过):

it('should bind displayed value to the SearchComponent property', () => {
    searchComponent.searchBoxValue = 'abc';
    searchCompFixture.detectChanges();
    expect(inputEl.nativeElement.getAttribute('ng-reflect-model')).toBe('abc');
});
Run Code Online (Sandbox Code Playgroud)

哪里

searchCompFixture = TestBed.createComponent(SearchComponent);
inputEl = searchCompFixture.debugElement.query(By.css('#search-box-input'));
Run Code Online (Sandbox Code Playgroud)

<input
    id="search-box-input"
    [(ngModel)]="searchBoxValue"\>
Run Code Online (Sandbox Code Playgroud)

另一方面,我想编写一个测试,首先设置input元素的值,并检查SearchComponent属性值是否已更改.我的尝试:

it('should bind SearchComponent property to the displayed value', fakeAsync(() => {
    inputEl.nativeElement.value = 'abc';
    let evt = new Event('input');
    inputEl.nativeElement.dispatchEvent(evt);

    tick();

    searchCompFixture.detectChanges();
    expect(searchComponent.searchBoxValue).toBe('abc');
}));
Run Code Online (Sandbox Code Playgroud)

但这不起作用,因为searchComponent.searchBoxValue没有设置值.任何想法如何解决这一问题?

testing 2-way-object-databinding typescript angular

3
推荐指数
1
解决办法
2393
查看次数

尝试在Android中的对话框中实现数据绑定

我正在尝试在我的android应用程序中实现数据绑定。我有一个对话框作为登录名,它位于我的主要活动上方,如下所示

这是我的主要活动

public class MapsActivity extends FragmentActivity {

    LayoutUserAuthBinding layoutBinder;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_maps);

        UserAuthDialogSettings dialogSettings = new UserAuthDialogSettings(this);

        Dialog dialog = dialogSettings.dialogSettings();
        dialog.show();

        layoutBinder = DataBindingUtil.inflate(LayoutInflater.from(dialog.getContext()),R.layout.layout_user_auth,null,false);
        layoutBinder.setMain(this);
    }

    public void onLoginButtonClick()
    {
        UserAuthModel model = layoutBinder.getUserAuth();
        Log.e("MAIN","NAME : " + model.getUserName());
        Log.e("MAIN","PASSWORD" + model.getUserPassword());
        Log.e("MAIN","PASSPHRASE" + model.getUserPassphrase());

        layoutBinder.getUserAuth().setUserName("shantanu");
        layoutBinder.getUserAuth().setUserPassword("password123");
        layoutBinder.getUserAuth().setUserPassphrase("passphrase123");
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的模特班

public class UserAuthModel extends BaseObservable{
@NonNull
String userName,userPassword,userPassphrase;

public UserAuthModel(String userName, String userPassword, String userPassphrase) {
    this.userName = userName;
    this.userPassword = …
Run Code Online (Sandbox Code Playgroud)

android mvvm 2-way-object-databinding android-databinding

3
推荐指数
1
解决办法
2220
查看次数