@ajaxjs/ui 1.1.1 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ajaxjs/ui",
3
- "version": "1.1.1",
3
+ "version": "1.1.2",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "private": false,
@@ -1,57 +0,0 @@
1
- // interface AttachmentPictureList extends Ajax {
2
- // delImgUrl: string;
3
- // pics: BaseObject[];
4
- // }
5
- // /**
6
- // * 相册列表
7
- // */
8
- // Vue.component('aj-attachment-picture-list', {
9
- // template: `
10
- // <table>
11
- // <tr>
12
- // <td>
13
- // <div class="label">相册图:</div>
14
- // <ul>
15
- // <li v-for="pic in pics" style="float:left;margin-right:1%;text-align:center;">
16
- // <a :href="picCtx + pic.path" target="_blank"><img :src="picCtx + pic.path" style="max-width: 100px;max-height: 100px;" /></a><br />
17
- // <a href="###" @click="delPic(pic.id);">删 除</a>
18
- // </li>
19
- // </ul>
20
- // </td>
21
- // <td>
22
- // <aj-xhr-upload ref="attachmentPictureUpload" :action="uploadUrl" :is-img-upload="true" :img-place="blankBg"></aj-xhr-upload>
23
- // </td>
24
- // </tr>
25
- // </table>
26
- // `,
27
- // props: {
28
- // picCtx: String,
29
- // uploadUrl: String,
30
- // blankBg: String,
31
- // delImgUrl: String,
32
- // apiUrl: String
33
- // },
34
- // data() {
35
- // return {
36
- // pics: []
37
- // };
38
- // },
39
- // mounted(): void {
40
- // this.getData();
41
- // this.$refs.attachmentPictureUpload.uploadOk_callback = this.getData;
42
- // },
43
- // methods: {
44
- // getData(this: AttachmentPictureList): void {
45
- // aj.xhr.get(this.apiUrl, (j: RepsonseResult) => this.pics = j.result);
46
- // },
47
- // delPic(this: AttachmentPictureList, picId: string): void {
48
- // aj.showConfirm("确定删除相册图片?", () => {
49
- // aj.xhr.dele(this.delImgUrl + picId + "/", (j: RepsonseResult) => {
50
- // if (j.isOk)
51
- // this.getData();// 刷新
52
- // });
53
- // });
54
- // }
55
- // }
56
- // });
57
- //# sourceMappingURL=attachment-picture-list.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"attachment-picture-list.js","sourceRoot":"","sources":["../../../src/components/list/attachment-picture-list.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,yBAAyB;AACzB,0BAA0B;AAC1B,IAAI;AAEJ,MAAM;AACN,UAAU;AACV,MAAM;AACN,gDAAgD;AAChD,kBAAkB;AAClB,kBAAkB;AAClB,mBAAmB;AACnB,uBAAuB;AACvB,oDAAoD;AACpD,2BAA2B;AAC3B,yGAAyG;AACzG,kKAAkK;AAClK,6EAA6E;AAC7E,gCAAgC;AAChC,4BAA4B;AAC5B,yBAAyB;AACzB,uBAAuB;AACvB,mJAAmJ;AACnJ,wBAAwB;AACxB,oBAAoB;AACpB,mBAAmB;AACnB,SAAS;AACT,eAAe;AACf,0BAA0B;AAC1B,6BAA6B;AAC7B,2BAA2B;AAC3B,6BAA6B;AAC7B,yBAAyB;AACzB,SAAS;AACT,eAAe;AACf,mBAAmB;AACnB,uBAAuB;AACvB,aAAa;AACb,SAAS;AACT,wBAAwB;AACxB,0BAA0B;AAC1B,+EAA+E;AAC/E,SAAS;AACT,iBAAiB;AACjB,uDAAuD;AACvD,oFAAoF;AACpF,aAAa;AACb,qEAAqE;AACrE,kDAAkD;AAClD,qFAAqF;AACrF,kCAAkC;AAClC,+CAA+C;AAC/C,sBAAsB;AACtB,kBAAkB;AAClB,YAAY;AACZ,QAAQ;AACR,MAAM"}
@@ -1,57 +0,0 @@
1
- // interface AttachmentPictureList extends Ajax {
2
- // delImgUrl: string;
3
- // pics: BaseObject[];
4
- // }
5
-
6
- // /**
7
- // * 相册列表
8
- // */
9
- // Vue.component('aj-attachment-picture-list', {
10
- // template: `
11
- // <table>
12
- // <tr>
13
- // <td>
14
- // <div class="label">相册图:</div>
15
- // <ul>
16
- // <li v-for="pic in pics" style="float:left;margin-right:1%;text-align:center;">
17
- // <a :href="picCtx + pic.path" target="_blank"><img :src="picCtx + pic.path" style="max-width: 100px;max-height: 100px;" /></a><br />
18
- // <a href="###" @click="delPic(pic.id);">删 除</a>
19
- // </li>
20
- // </ul>
21
- // </td>
22
- // <td>
23
- // <aj-xhr-upload ref="attachmentPictureUpload" :action="uploadUrl" :is-img-upload="true" :img-place="blankBg"></aj-xhr-upload>
24
- // </td>
25
- // </tr>
26
- // </table>
27
- // `,
28
- // props: {
29
- // picCtx: String,
30
- // uploadUrl: String,
31
- // blankBg: String,
32
- // delImgUrl: String,
33
- // apiUrl: String
34
- // },
35
- // data() {
36
- // return {
37
- // pics: []
38
- // };
39
- // },
40
- // mounted(): void {
41
- // this.getData();
42
- // this.$refs.attachmentPictureUpload.uploadOk_callback = this.getData;
43
- // },
44
- // methods: {
45
- // getData(this: AttachmentPictureList): void {
46
- // aj.xhr.get(this.apiUrl, (j: RepsonseResult) => this.pics = j.result);
47
- // },
48
- // delPic(this: AttachmentPictureList, picId: string): void {
49
- // aj.showConfirm("确定删除相册图片?", () => {
50
- // aj.xhr.dele(this.delImgUrl + picId + "/", (j: RepsonseResult) => {
51
- // if (j.isOk)
52
- // this.getData();// 刷新
53
- // });
54
- // });
55
- // }
56
- // }
57
- // });
@@ -1,227 +0,0 @@
1
- // namespace aj.list {
2
- // /**
3
- // * 分页列表专用的结果数据
4
- // */
5
- // interface PageListRepsonseResult extends RepsonseResult {
6
- // /**
7
- // * 结果总数
8
- // */
9
- // total: number;
10
- // }
11
- // /**
12
- // * 列表数据
13
- // */
14
- // interface DataStore extends Ajax {
15
- // /**
16
- // * 是否分页,false=读取所有数据
17
- // */
18
- // isPage: boolean;
19
- // pageStart: number;
20
- // pageSize: number;
21
- // initPageSize: number;
22
- // total: number;
23
- // /**
24
- // * 请求结果
25
- // */
26
- // result: BaseObject[];
27
- // totalPage: number;
28
- // currentPage: number;
29
- // /**
30
- // * 默认的分页参数其名字
31
- // */
32
- // pageParamNames: string[];
33
- // /**
34
- // * 计算分页
35
- // */
36
- // count(): void;
37
- // }
38
- // /**
39
- // * 本地数据仓库
40
- // * 一般情况下不会单独使用这个组件
41
- // */
42
- // export var datastore = {
43
- // props: {
44
- // apiUrl: { type: String, required: true }, // JSON 接口地址
45
- // isPage: { type: Boolean, default: true },
46
- // initPageSize: { type: Number, required: false, default: 9 },
47
- // isAutoLoad: { type: Boolean, default: true },
48
- // baseParam: { type: Object, default() { return {}; } },
49
- // pageParamNames: { type: Array, default() { return ['start', 'limit']; } }, // 默认的分页参数其名字
50
- // onLoad: Function
51
- // },
52
- // data(this: DataStore) {
53
- // return {
54
- // result: [],
55
- // extraParam: {}, // 与 baseParam 合并后每次请求可发送的,可以修改的
56
- // pageSize: this.initPageSize,
57
- // total: 0,
58
- // totalPage: 0,
59
- // pageStart: 0,
60
- // currentPage: 0
61
- // };
62
- // },
63
- // methods: {
64
- // /**
65
- // * 分页,跳到第几页,下拉控件传入指定的页码
66
- // *
67
- // * @param this
68
- // * @param ev
69
- // */
70
- // jumpPageBySelect(this: DataStore, ev: Event): void {
71
- // let selectEl: HTMLSelectElement = <HTMLSelectElement>ev.target;
72
- // let currentPage: string = selectEl.options[selectEl.selectedIndex].value;
73
- // this.pageStart = (Number(currentPage) - 1) * this.pageSize;
74
- // this.getData();
75
- // },
76
- // /**
77
- // * PageSize 改变时候重新分页
78
- // *
79
- // * @param this
80
- // * @param ev
81
- // */
82
- // onPageSizeChange(this: DataStore, ev: Event): void {
83
- // this.pageSize = Number((<HTMLInputElement>ev.target).value);
84
- // this.count();
85
- // this.getData();
86
- // },
87
- // count(this: DataStore): void {
88
- // let totalPage: number = this.total / this.pageSize, yushu: number = this.total % this.pageSize;
89
- // this.totalPage = parseInt(String(yushu == 0 ? totalPage : totalPage + 1));
90
- // //@ts-ignore
91
- // this.currentPage = parseInt((this.pageStart / this.pageSize) + 1);
92
- // },
93
- // /**
94
- // * 前一页
95
- // *
96
- // * @param this
97
- // */
98
- // previousPage(this: DataStore): void {
99
- // this.pageStart -= this.pageSize;
100
- // //@ts-ignore
101
- // this.currentPage = parseInt((this.pageStart / this.pageSize) + 1);
102
- // this.getData();
103
- // },
104
- // /**
105
- // * 下一页
106
- // *
107
- // * @param this
108
- // */
109
- // nextPage(this: DataStore): void {
110
- // this.pageStart += this.pageSize;
111
- // this.currentPage = (this.pageStart / this.pageSize) + 1;
112
- // this.getData();
113
- // }
114
- // }
115
- // };
116
- // /**
117
- // * 列表控件
118
- // */
119
- // interface List extends DataStore, Vue {
120
- // /**
121
- // * 数据分页是否追加模式,默认不追加 = false。 App 一般采用追加模式
122
- // */
123
- // isDataAppend: boolean;
124
- // /**
125
- // * 到达底部是否自动加载下一页,通常在 移动端使用,这个应该是元素的 CSS Selector
126
- // */
127
- // autoLoadWhenReachedBottom: boolean;
128
- // }
129
- // Vue.component('aj-list', {
130
- // mixins: [datastore],
131
- // template: html`
132
- // <div class="aj-list">
133
- // <slot name="header" v-if="total != 0"></slot>
134
- // <ul v-if="showDefaultUi && (total != 0)">
135
- // <li v-for="(item, index) in result">
136
- // <slot v-bind="item">
137
- // <a href="#" @click="show(item.id, index, $event)" :id="item.id">{{item.name}}</a>
138
- // </slot>
139
- // </li>
140
- // </ul>
141
- // <div class="no-data" v-show="isPage && total == 0">未有任何数据</div>
142
- // <footer v-if="isPage" class="pager">
143
- // <a v-if="pageStart > 0" href="#" @click="previousPage">上一页</a>
144
- // <a v-if="(pageStart > 0 ) && (pageStart + pageSize < total)" style="text-decoration: none;">&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;</a>
145
- // <a v-if="pageStart + pageSize < total" href="#" @click="nextPage">下一页</a>
146
- // <a href="javascript:;" @click="getData"><i class="fa fa-refresh" aria-hidden="true"></i> 刷新</a>
147
- // <input type="hidden" name="start" :value="pageStart" />
148
- // 页数:{{currentPage}}/{{totalPage}} 记录数:{{pageStart}}/{{total}}
149
- // 每页记录数: <input size="2" title="输入一个数字确定每页记录数" type="text" :value="pageSize" @change="onPageSizeChange" />
150
- // 跳转:
151
- // <select @change="jumpPageBySelect">
152
- // <option :value="n" v-for="n in totalPage">{{n}}</option>
153
- // </select>
154
- // </footer>
155
- // <div v-show="!!autoLoadWhenReachedBottom" class="buttom"></div>
156
- // </div>
157
- // `,
158
- // props: {
159
- // showDefaultUi: { type: Boolean, default: true }, // 如果只是单纯作为分页组件,那么则不需要 UI
160
- // isShowFooter: { type: Boolean, default: true }, // 是否显示分页 UI
161
- // hrefStr: { type: String, required: false },
162
- // autoLoadWhenReachedBottom: { type: String, default: '' },
163
- // isDataAppend: { type: Boolean, default: false }
164
- // },
165
- // mounted(this: List): void {
166
- // this.isAutoLoad && this.getData();
167
- // // this.BUS.$on('base-param-change', this.onExtraParamChange.bind(this));
168
- // if (!!this.autoLoadWhenReachedBottom) {
169
- // // var scrollSpy = new aj.scrollSpy({ scrollInElement: aj(this.autoLoadWhenReachedBottom), spyOn: thish.$el.$('.buttom') });
170
- // // scrollSpy.onScrollSpyBackInSight = e => this.nextPage();
171
- // }
172
- // },
173
- // methods: {
174
- // getData(this: List): void {
175
- // this.lastRequestParam = {};
176
- // aj.apply(this.lastRequestParam, this.baseParam);
177
- // aj.apply(this.lastRequestParam, this.extraParam);
178
- // initPageParams.call(this);
179
- // xhr.get(this.apiUrl, this.onLoad || ((j: PageListRepsonseResult) => {
180
- // if (j.result) {
181
- // if (this.isPage && j.total === undefined)
182
- // aj.alert('JSON 缺少 total 字段');
183
- // if (j.total == 0 || j.result.length == 0)
184
- // aj.alert('没有找到任何记录');
185
- // this.result = j.result;
186
- // if (this.isPage) {
187
- // this.total = j.total;
188
- // this.count();
189
- // }
190
- // }
191
- // this.$emit('pager-result', this.result);
192
- // }), this.lastRequestParam);
193
- // },
194
- // /**
195
- // * 复位
196
- // *
197
- // * @param this
198
- // */
199
- // reset(this: List): void {
200
- // this.total = this.totalPage = this.pageStart = this.currentPage = 0;
201
- // this.pageSize = this.initPageSize;
202
- // },
203
- // onExtraParamChange(this: List, params: JsonParam): void {
204
- // aj.apply(this.extraParam, params);
205
- // this.pageStart = 0; // 每次 extraParam 被改变,都是从第一笔开始
206
- // this.getData();
207
- // }
208
- // },
209
- // watch: {
210
- // extraParam(this: List): void {
211
- // this.getData();
212
- // }
213
- // }
214
- // });
215
- // /**
216
- // * 生成分页参数的名字
217
- // *
218
- // * @param this
219
- // */
220
- // function initPageParams(this: List) {
221
- // let params: { [key: string]: number } = {};
222
- // params[this.pageParamNames[0]] = this.pageStart;
223
- // params[this.pageParamNames[1]] = this.pageSize;
224
- // this.isPage && aj.apply(this.lastRequestParam, params);
225
- // }
226
- // }
227
- //# sourceMappingURL=list.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/components/list/list.ts"],"names":[],"mappings":"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"}
@@ -1,261 +0,0 @@
1
-
2
-
3
- // namespace aj.list {
4
- // /**
5
- // * 分页列表专用的结果数据
6
- // */
7
- // interface PageListRepsonseResult extends RepsonseResult {
8
- // /**
9
- // * 结果总数
10
- // */
11
- // total: number;
12
- // }
13
-
14
- // /**
15
- // * 列表数据
16
- // */
17
- // interface DataStore extends Ajax {
18
- // /**
19
- // * 是否分页,false=读取所有数据
20
- // */
21
- // isPage: boolean;
22
-
23
- // pageStart: number;
24
-
25
- // pageSize: number;
26
-
27
- // initPageSize: number;
28
-
29
- // total: number;
30
-
31
- // /**
32
- // * 请求结果
33
- // */
34
- // result: BaseObject[];
35
-
36
- // totalPage: number;
37
-
38
- // currentPage: number;
39
-
40
- // /**
41
- // * 默认的分页参数其名字
42
- // */
43
- // pageParamNames: string[];
44
-
45
- // /**
46
- // * 计算分页
47
- // */
48
- // count(): void;
49
- // }
50
-
51
- // /**
52
- // * 本地数据仓库
53
- // * 一般情况下不会单独使用这个组件
54
- // */
55
- // export var datastore = {
56
- // props: {
57
- // apiUrl: { type: String, required: true }, // JSON 接口地址
58
- // isPage: { type: Boolean, default: true },
59
- // initPageSize: { type: Number, required: false, default: 9 },
60
- // isAutoLoad: { type: Boolean, default: true },
61
- // baseParam: { type: Object, default() { return {}; } },
62
- // pageParamNames: { type: Array, default() { return ['start', 'limit']; } }, // 默认的分页参数其名字
63
- // onLoad: Function
64
- // },
65
- // data(this: DataStore) {
66
- // return {
67
- // result: [],
68
- // extraParam: {}, // 与 baseParam 合并后每次请求可发送的,可以修改的
69
- // pageSize: this.initPageSize,
70
- // total: 0,
71
- // totalPage: 0,
72
- // pageStart: 0,
73
- // currentPage: 0
74
- // };
75
- // },
76
-
77
- // methods: {
78
- // /**
79
- // * 分页,跳到第几页,下拉控件传入指定的页码
80
- // *
81
- // * @param this
82
- // * @param ev
83
- // */
84
- // jumpPageBySelect(this: DataStore, ev: Event): void {
85
- // let selectEl: HTMLSelectElement = <HTMLSelectElement>ev.target;
86
- // let currentPage: string = selectEl.options[selectEl.selectedIndex].value;
87
-
88
- // this.pageStart = (Number(currentPage) - 1) * this.pageSize;
89
- // this.getData();
90
- // },
91
-
92
- // /**
93
- // * PageSize 改变时候重新分页
94
- // *
95
- // * @param this
96
- // * @param ev
97
- // */
98
- // onPageSizeChange(this: DataStore, ev: Event): void {
99
- // this.pageSize = Number((<HTMLInputElement>ev.target).value);
100
- // this.count();
101
- // this.getData();
102
- // },
103
-
104
- // count(this: DataStore): void {
105
- // let totalPage: number = this.total / this.pageSize, yushu: number = this.total % this.pageSize;
106
- // this.totalPage = parseInt(String(yushu == 0 ? totalPage : totalPage + 1));
107
- // //@ts-ignore
108
- // this.currentPage = parseInt((this.pageStart / this.pageSize) + 1);
109
- // },
110
-
111
- // /**
112
- // * 前一页
113
- // *
114
- // * @param this
115
- // */
116
- // previousPage(this: DataStore): void {
117
- // this.pageStart -= this.pageSize;
118
- // //@ts-ignore
119
- // this.currentPage = parseInt((this.pageStart / this.pageSize) + 1);
120
-
121
- // this.getData();
122
- // },
123
-
124
- // /**
125
- // * 下一页
126
- // *
127
- // * @param this
128
- // */
129
- // nextPage(this: DataStore): void {
130
- // this.pageStart += this.pageSize;
131
- // this.currentPage = (this.pageStart / this.pageSize) + 1;
132
-
133
- // this.getData();
134
- // }
135
- // }
136
- // };
137
-
138
- // /**
139
- // * 列表控件
140
- // */
141
- // interface List extends DataStore, Vue {
142
- // /**
143
- // * 数据分页是否追加模式,默认不追加 = false。 App 一般采用追加模式
144
- // */
145
- // isDataAppend: boolean;
146
-
147
- // /**
148
- // * 到达底部是否自动加载下一页,通常在 移动端使用,这个应该是元素的 CSS Selector
149
- // */
150
- // autoLoadWhenReachedBottom: boolean;
151
- // }
152
-
153
- // Vue.component('aj-list', {
154
- // mixins: [datastore],
155
- // template: html`
156
- // <div class="aj-list">
157
- // <slot name="header" v-if="total != 0"></slot>
158
- // <ul v-if="showDefaultUi && (total != 0)">
159
- // <li v-for="(item, index) in result">
160
- // <slot v-bind="item">
161
- // <a href="#" @click="show(item.id, index, $event)" :id="item.id">{{item.name}}</a>
162
- // </slot>
163
- // </li>
164
- // </ul>
165
- // <div class="no-data" v-show="isPage && total == 0">未有任何数据</div>
166
- // <footer v-if="isPage" class="pager">
167
- // <a v-if="pageStart > 0" href="#" @click="previousPage">上一页</a>
168
- // <a v-if="(pageStart > 0 ) && (pageStart + pageSize < total)" style="text-decoration: none;">&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;</a>
169
- // <a v-if="pageStart + pageSize < total" href="#" @click="nextPage">下一页</a>
170
- // <a href="javascript:;" @click="getData"><i class="fa fa-refresh" aria-hidden="true"></i> 刷新</a>
171
- // <input type="hidden" name="start" :value="pageStart" />
172
- // 页数:{{currentPage}}/{{totalPage}} 记录数:{{pageStart}}/{{total}}
173
- // 每页记录数: <input size="2" title="输入一个数字确定每页记录数" type="text" :value="pageSize" @change="onPageSizeChange" />
174
- // 跳转:
175
- // <select @change="jumpPageBySelect">
176
- // <option :value="n" v-for="n in totalPage">{{n}}</option>
177
- // </select>
178
- // </footer>
179
- // <div v-show="!!autoLoadWhenReachedBottom" class="buttom"></div>
180
- // </div>
181
- // `,
182
- // props: {
183
- // showDefaultUi: { type: Boolean, default: true }, // 如果只是单纯作为分页组件,那么则不需要 UI
184
- // isShowFooter: { type: Boolean, default: true }, // 是否显示分页 UI
185
- // hrefStr: { type: String, required: false },
186
- // autoLoadWhenReachedBottom: { type: String, default: '' },
187
- // isDataAppend: { type: Boolean, default: false }
188
- // },
189
- // mounted(this: List): void {
190
- // this.isAutoLoad && this.getData();
191
-
192
- // // this.BUS.$on('base-param-change', this.onExtraParamChange.bind(this));
193
- // if (!!this.autoLoadWhenReachedBottom) {
194
- // // var scrollSpy = new aj.scrollSpy({ scrollInElement: aj(this.autoLoadWhenReachedBottom), spyOn: thish.$el.$('.buttom') });
195
- // // scrollSpy.onScrollSpyBackInSight = e => this.nextPage();
196
- // }
197
- // },
198
- // methods: {
199
- // getData(this: List): void {
200
- // this.lastRequestParam = {};
201
- // aj.apply(this.lastRequestParam, this.baseParam);
202
- // aj.apply(this.lastRequestParam, this.extraParam);
203
- // initPageParams.call(this);
204
-
205
- // xhr.get(this.apiUrl, this.onLoad || ((j: PageListRepsonseResult) => {
206
- // if (j.result) {
207
- // if (this.isPage && j.total === undefined)
208
- // aj.alert('JSON 缺少 total 字段');
209
-
210
- // if (j.total == 0 || j.result.length == 0)
211
- // aj.alert('没有找到任何记录');
212
-
213
- // this.result = j.result;
214
-
215
- // if (this.isPage) {
216
- // this.total = j.total;
217
- // this.count();
218
- // }
219
- // }
220
-
221
- // this.$emit('pager-result', this.result);
222
- // }), this.lastRequestParam);
223
- // },
224
-
225
- // /**
226
- // * 复位
227
- // *
228
- // * @param this
229
- // */
230
- // reset(this: List): void {
231
- // this.total = this.totalPage = this.pageStart = this.currentPage = 0;
232
- // this.pageSize = this.initPageSize;
233
- // },
234
-
235
- // onExtraParamChange(this: List, params: JsonParam): void {
236
- // aj.apply(this.extraParam, params);
237
-
238
- // this.pageStart = 0; // 每次 extraParam 被改变,都是从第一笔开始
239
- // this.getData();
240
- // }
241
- // },
242
- // watch: {
243
- // extraParam(this: List): void {
244
- // this.getData();
245
- // }
246
- // }
247
- // });
248
-
249
- // /**
250
- // * 生成分页参数的名字
251
- // *
252
- // * @param this
253
- // */
254
- // function initPageParams(this: List) {
255
- // let params: { [key: string]: number } = {};
256
- // params[this.pageParamNames[0]] = this.pageStart;
257
- // params[this.pageParamNames[1]] = this.pageSize;
258
-
259
- // this.isPage && aj.apply(this.lastRequestParam, params);
260
- // }
261
- // }
@@ -1,42 +0,0 @@
1
- <template>
2
- <a :href="avatar" target="_blank">
3
- <img :src="avatar" style="max-width:50px;max-height:60px;vertical-align: middle;" @mouseenter="mouseEnter" @mouseleave="mouseLeave" />
4
- </a>
5
- </template>
6
-
7
- <script lang="ts">
8
- /**
9
- * 显示头像
10
- */
11
- export default {
12
- props: {
13
- avatar: {
14
- // 头像图片地址
15
- type: String,
16
- required: true,
17
- },
18
- },
19
- methods: {
20
- mouseEnter(): void {
21
- // @ts-ignore
22
- if (window.aj_avatar_imgUrl)
23
- // @ts-ignore
24
- window.aj_avatar_imgUrl = this.avatar;
25
- },
26
- mouseLeave(): void {
27
- // @ts-ignore
28
- if (window.aj_avatar_imgUrl)
29
- // @ts-ignore
30
- window.aj_avatar_imgUrl = null;
31
- },
32
- },
33
- };
34
- </script>
35
-
36
- <style lang="less" scoped>
37
- .aj-img-thumb img {
38
- max-width: 50px;
39
- max-height: 60px;
40
- vertical-align: middle;
41
- }
42
- </style>