grootJS ui 컨트롤 정의

3958 단어 root
index13.html
<html>
<head>
<title>ui </title>
<script src="jquery-1.11.2.min.js"></script>
<script src="groot.js"></script>
</head>
<body>
<div gt-view="myview">
<ul gt-each="list">
<li gt-class="$index(back0:value % 2 ==0,back1:value % 2==1)"><span
gt-text="{$index}+1"></span><span> :</span><span
gt-text="{name}"></span>---<span> :</span><span
gt-text="{sex}"></span> <input type="text" gt-wach="mychange" gt-value-change="name"><span gt-ui="name(myui)"></span></li>
</ul>
</div>
</body>
</html>
<script>
require("./ui");
groot.view("myview", function (vm, ve) {
vm.list = [
{"name": " ", "sex": " "}
,
{"name": " ", "sex": " "}
,
{"name": " ", "sex": " "}
];
ve.mychange = function ($self, value) {
groot.log(" " + $self.$index + " , \"" + value + "\"");
}
})
</script>

하나의 공간을 사용하려면 먼저 js에서 컨트롤러require ("./ui) 를 인용해야 합니다.
html에서 연결 컨트롤 name는 속성 이름입니다. myui는 컨트롤 이름입니다.
다음은 이 컨트롤의 정의입니다.
groot.ui["myui"] = function (element, id, data, value, upParent) {
groot.createElement("<span gt-text=\"{uivalue}\" style='color: red'></span><input gt-click=\"change\" type='button' value=' '>", id,element);
var moudle = groot.view(id, function (vm, ve) {
vm.uivalue = value;
ve.change = function () {
vm.uivalue = " ";
vm.uivalueRender();
upParent();
}
});;
}

함수groot.ui["myui"]에서 myui는 컨트롤 이름입니다. 그는 네 개의 매개 변수가 있습니다.
element는 컨트롤러가 있는 html 용기 즉
id는 시스템에서 컨트롤로 생성된 idvalue입니다.
upParent는 부모 vm 값 동기화 함수입니다.
데이터는 초기화 컨트롤의 다용도 값입니다. 데이터를 초기화해야 한다면 데이터가 받아들여지고 자동으로 json 대상으로 바뀝니다.
할 수 있다
 groot.uiInit["test"]={"key":"GUJ778-090909"}
<span gt-ui="name(myui)" gt-ui-data="uiInit[test]"></span>

데이터는 이 두 가지 방식으로 값을 부여할 수 있다
groot.createElement("<span gt-text=\"{uivalue}\" style='color: red'></span><input gt-click=\"change\" type='button' value=' '>", id,element);

html를 요소에 넣으려면groot을 사용해야 합니다.create Element 함수로 이 공간이 시스템의 쓰레기 수거 메커니즘에 의해 회수됩니다.
컨트롤에 속성이 있어야 합니다. 이 속성은 부모 VM과 상호작용을 하고 uivalue가 업데이트될 때 upParent () 를 호출해서 부모 보기를 동기화해야 합니다.

좋은 웹페이지 즐겨찾기