icon.vue 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342
  1. <template>
  2. <div>
  3. <el-form
  4. :inline="true"
  5. label-width="85px"
  6. ref="menuForm"
  7. label-position="top"
  8. >
  9. <el-form-item prop="icon" style="width:100%">
  10. <i
  11. class="icon"
  12. :class="'el-icon-'+ meta.icon"
  13. style="position: absolute; z-index: 9999; padding: 5px 10px; "
  14. ></i>
  15. <el-select clearable filterable class="gva-select" v-model="meta.icon" placeholder="请选择">
  16. <el-option v-for="item in options" :key="item.key" :label="item.key" :value="item.key">
  17. <span class="icon" :class="item.label"></span>
  18. <span style="float: left">{{ item.key }}</span>
  19. </el-option>
  20. </el-select>
  21. </el-form-item>
  22. </el-form>
  23. </div>
  24. </template>
  25. <script>
  26. export default {
  27. name: "icon",
  28. data() {
  29. return {
  30. input: "",
  31. options: [
  32. { key: "platform-eleme", label: "el-icon-platform-eleme" },
  33. { key: "eleme", label: "el-icon-eleme" },
  34. { key: "delete-solid", label: "el-icon-delete-solid" },
  35. { key: "delete", label: "el-icon-delete" },
  36. { key: "s-tools", label: "el-icon-s-tools" },
  37. { key: "setting", label: "el-icon-setting" },
  38. { key: "user-solid", label: "el-icon-user-solid" },
  39. { key: "user", label: "el-icon-user" },
  40. { key: "phone", label: "el-icon-phone" },
  41. { key: "phone-outline", label: "el-icon-phone-outline" },
  42. { key: "more", label: "el-icon-more" },
  43. { key: "more-outline", label: "el-icon-more-outline" },
  44. { key: "star-on", label: "el-icon-star-on" },
  45. { key: "star-off", label: "el-icon-star-off" },
  46. { key: "s-goods", label: "el-icon-s-goods" },
  47. { key: "goods", label: "el-icon-goods" },
  48. { key: "warning", label: "el-icon-warning" },
  49. { key: "warning-outline", label: "el-icon-warning-outline" },
  50. { key: "question", label: "el-icon-question" },
  51. { key: "info", label: "el-icon-info" },
  52. { key: "remove", label: "el-icon-remove" },
  53. { key: "circle-plus", label: "el-icon-circle-plus" },
  54. { key: "success", label: "el-icon-success" },
  55. { key: "error", label: "el-icon-error" },
  56. { key: "zoom-in", label: "el-icon-zoom-in" },
  57. { key: "zoom-out", label: "el-icon-zoom-out" },
  58. { key: "remove-outline", label: "el-icon-remove-outline" },
  59. { key: "circle-plus-outline", label: "el-icon-circle-plus-outline" },
  60. { key: "circle-check", label: "el-icon-circle-check" },
  61. { key: "circle-close", label: "el-icon-circle-close" },
  62. { key: "s-help", label: "el-icon-s-help" },
  63. { key: "help", label: "el-icon-help" },
  64. { key: "minus", label: "el-icon-minus" },
  65. { key: "plus", label: "el-icon-plus" },
  66. { key: "check", label: "el-icon-check" },
  67. { key: "close", label: "el-icon-close" },
  68. { key: "picture", label: "el-icon-picture" },
  69. { key: "picture-outline", label: "el-icon-picture-outline" },
  70. {
  71. key: "picture-outline-round",
  72. label: "el-icon-picture-outline-round"
  73. },
  74. { key: "upload", label: "el-icon-upload" },
  75. { key: "upload2", label: "el-icon-upload2" },
  76. { key: "download", label: "el-icon-download" },
  77. { key: "camera-solid", label: "el-icon-camera-solid" },
  78. { key: "camera", label: "el-icon-camera" },
  79. { key: "video-camera-solid", label: "el-icon-video-camera-solid" },
  80. { key: "video-camera", label: "el-icon-video-camera" },
  81. { key: "message-solid", label: "el-icon-message-solid" },
  82. { key: "bell", label: "el-icon-bell" },
  83. { key: "s-cooperation", label: "el-icon-s-cooperation" },
  84. { key: "s-order", label: "el-icon-s-order" },
  85. { key: "s-platform", label: "el-icon-s-platform" },
  86. { key: "s-fold", label: "el-icon-s-fold" },
  87. { key: "s-unfold", label: "el-icon-s-unfold" },
  88. { key: "s-operation", label: "el-icon-s-operation" },
  89. { key: "s-promotion", label: "el-icon-s-promotion" },
  90. { key: "s-home", label: "el-icon-s-home" },
  91. { key: "s-release", label: "el-icon-s-release" },
  92. { key: "s-ticket", label: "el-icon-s-ticket" },
  93. { key: "s-management", label: "el-icon-s-management" },
  94. { key: "s-open", label: "el-icon-s-open" },
  95. { key: "s-shop", label: "el-icon-s-shop" },
  96. { key: "s-marketing", label: "el-icon-s-marketing" },
  97. { key: "s-flag", label: "el-icon-s-flag" },
  98. { key: "s-comment", label: "el-icon-s-comment" },
  99. { key: "s-finance", label: "el-icon-s-finance" },
  100. { key: "s-claim", label: "el-icon-s-claim" },
  101. { key: "s-custom", label: "el-icon-s-custom" },
  102. { key: "s-opportunity", label: "el-icon-s-opportunity" },
  103. { key: "s-data", label: "el-icon-s-data" },
  104. { key: "s-check", label: "el-icon-s-check" },
  105. { key: "s-grid", label: "el-icon-s-grid" },
  106. { key: "menu", label: "el-icon-menu" },
  107. { key: "share", label: "el-icon-share" },
  108. { key: "d-caret", label: "el-icon-d-caret" },
  109. { key: "caret-left", label: "el-icon-caret-left" },
  110. { key: "caret-right", label: "el-icon-caret-right" },
  111. { key: "caret-bottom", label: "el-icon-caret-bottom" },
  112. { key: "caret-top", label: "el-icon-caret-top" },
  113. { key: "bottom-left", label: "el-icon-bottom-left" },
  114. { key: "bottom-right", label: "el-icon-bottom-right" },
  115. { key: "back", label: "el-icon-back" },
  116. { key: "right", label: "el-icon-right" },
  117. { key: "bottom", label: "el-icon-bottom" },
  118. { key: "top", label: "el-icon-top" },
  119. { key: "top-left", label: "el-icon-top-left" },
  120. { key: "top-right", label: "el-icon-top-right" },
  121. { key: "arrow-left", label: "el-icon-arrow-left" },
  122. { key: "arrow-right", label: "el-icon-arrow-right" },
  123. { key: "arrow-down", label: "el-icon-arrow-down" },
  124. { key: "arrow-up", label: "el-icon-arrow-up" },
  125. { key: "d-arrow-left", label: "el-icon-d-arrow-left" },
  126. { key: "d-arrow-right", label: "el-icon-d-arrow-right" },
  127. { key: "video-pause", label: "el-icon-video-pause" },
  128. { key: "video-play", label: "el-icon-video-play" },
  129. { key: "refresh", label: "el-icon-refresh" },
  130. { key: "refresh-right", label: "el-icon-refresh-right" },
  131. { key: "refresh-left", label: "el-icon-refresh-left" },
  132. { key: "finished", label: "el-icon-finished" },
  133. { key: "sort", label: "el-icon-sort" },
  134. { key: "sort-up", label: "el-icon-sort-up" },
  135. { key: "sort-down", label: "el-icon-sort-down" },
  136. { key: "rank", label: "el-icon-rank" },
  137. { key: "loading", label: "el-icon-loading" },
  138. { key: "view", label: "el-icon-view" },
  139. { key: "c-scale-to-original", label: "el-icon-c-scale-to-original" },
  140. { key: "date", label: "el-icon-date" },
  141. { key: "edit", label: "el-icon-edit" },
  142. { key: "edit-outline", label: "el-icon-edit-outline" },
  143. { key: "folder", label: "el-icon-folder" },
  144. { key: "folder-opened", label: "el-icon-folder-opened" },
  145. { key: "folder-add", label: "el-icon-folder-add" },
  146. { key: "folder-remove", label: "el-icon-folder-remove" },
  147. { key: "folder-delete", label: "el-icon-folder-delete" },
  148. { key: "folder-checked", label: "el-icon-folder-checked" },
  149. { key: "tickets", label: "el-icon-tickets" },
  150. { key: "document-remove", label: "el-icon-document-remove" },
  151. { key: "document-delete", label: "el-icon-document-delete" },
  152. { key: "document-copy", label: "el-icon-document-copy" },
  153. { key: "document-checked", label: "el-icon-document-checked" },
  154. { key: "document", label: "el-icon-document" },
  155. { key: "document-add", label: "el-icon-document-add" },
  156. { key: "printer", label: "el-icon-printer" },
  157. { key: "paperclip", label: "el-icon-paperclip" },
  158. { key: "takeaway-box", label: "el-icon-takeaway-box" },
  159. { key: "search", label: "el-icon-search" },
  160. { key: "monitor", label: "el-icon-monitor" },
  161. { key: "attract", label: "el-icon-attract" },
  162. { key: "mobile", label: "el-icon-mobile" },
  163. { key: "scissors", label: "el-icon-scissors" },
  164. { key: "umbrella", label: "el-icon-umbrella" },
  165. { key: "headset", label: "el-icon-headset" },
  166. { key: "brush", label: "el-icon-brush" },
  167. { key: "mouse", label: "el-icon-mouse" },
  168. { key: "coordinate", label: "el-icon-coordinate" },
  169. { key: "magic-stick", label: "el-icon-magic-stick" },
  170. { key: "reading", label: "el-icon-reading" },
  171. { key: "data-line", label: "el-icon-data-line" },
  172. { key: "data-board", label: "el-icon-data-board" },
  173. { key: "pie-chart", label: "el-icon-pie-chart" },
  174. { key: "data-analysis", label: "el-icon-data-analysis" },
  175. { key: "collection-tag", label: "el-icon-collection-tag" },
  176. { key: "film", label: "el-icon-film" },
  177. { key: "suitcase", label: "el-icon-suitcase" },
  178. { key: "suitcase-1", label: "el-icon-suitcase-1" },
  179. { key: "receiving", label: "el-icon-receiving" },
  180. { key: "collection", label: "el-icon-collection" },
  181. { key: "files", label: "el-icon-files" },
  182. { key: "notebook-1", label: "el-icon-notebook-1" },
  183. { key: "notebook-2", label: "el-icon-notebook-2" },
  184. { key: "toilet-paper", label: "el-icon-toilet-paper" },
  185. { key: "office-building", label: "el-icon-office-building" },
  186. { key: "school", label: "el-icon-school" },
  187. { key: "table-lamp", label: "el-icon-table-lamp" },
  188. { key: "house", label: "el-icon-house" },
  189. { key: "no-smoking", label: "el-icon-no-smoking" },
  190. { key: "smoking", label: "el-icon-smoking" },
  191. { key: "shopping-cart-full", label: "el-icon-shopping-cart-full" },
  192. { key: "shopping-cart-1", label: "el-icon-shopping-cart-1" },
  193. { key: "shopping-cart-2", label: "el-icon-shopping-cart-2" },
  194. { key: "shopping-bag-1", label: "el-icon-shopping-bag-1" },
  195. { key: "shopping-bag-2", label: "el-icon-shopping-bag-2" },
  196. { key: "sold-out", label: "el-icon-sold-out" },
  197. { key: "sell", label: "el-icon-sell" },
  198. { key: "present", label: "el-icon-present" },
  199. { key: "box", label: "el-icon-box" },
  200. { key: "bank-card", label: "el-icon-bank-card" },
  201. { key: "money", label: "el-icon-money" },
  202. { key: "coin", label: "el-icon-coin" },
  203. { key: "wallet", label: "el-icon-wallet" },
  204. { key: "discount", label: "el-icon-discount" },
  205. { key: "price-tag", label: "el-icon-price-tag" },
  206. { key: "news", label: "el-icon-news" },
  207. { key: "guide", label: "el-icon-guide" },
  208. { key: "male", label: "el-icon-male" },
  209. { key: "female", label: "el-icon-female" },
  210. { key: "thumb", label: "el-icon-thumb" },
  211. { key: "cpu", label: "el-icon-cpu" },
  212. { key: "link", label: "el-icon-link" },
  213. { key: "connection", label: "el-icon-connection" },
  214. { key: "open", label: "el-icon-open" },
  215. { key: "turn-off", label: "el-icon-turn-off" },
  216. { key: "set-up", label: "el-icon-set-up" },
  217. { key: "chat-round", label: "el-icon-chat-round" },
  218. { key: "chat-line-round", label: "el-icon-chat-line-round" },
  219. { key: "chat-square", label: "el-icon-chat-square" },
  220. { key: "chat-dot-round", label: "el-icon-chat-dot-round" },
  221. { key: "chat-dot-square", label: "el-icon-chat-dot-square" },
  222. { key: "chat-line-square", label: "el-icon-chat-line-square" },
  223. { key: "message", label: "el-icon-message" },
  224. { key: "postcard", label: "el-icon-postcard" },
  225. { key: "position", label: "el-icon-position" },
  226. { key: "turn-off-microphone", label: "el-icon-turn-off-microphone" },
  227. { key: "microphone", label: "el-icon-microphone" },
  228. { key: "close-notification", label: "el-icon-close-notification" },
  229. { key: "bangzhu", label: "el-icon-bangzhu" },
  230. { key: "time", label: "el-icon-time" },
  231. { key: "odometer", label: "el-icon-odometer" },
  232. { key: "crop", label: "el-icon-crop" },
  233. { key: "aim", label: "el-icon-aim" },
  234. { key: "switch-button", label: "el-icon-switch-button" },
  235. { key: "full-screen", label: "el-icon-full-screen" },
  236. { key: "copy-document", label: "el-icon-copy-document" },
  237. { key: "mic", label: "el-icon-mic" },
  238. { key: "stopwatch", label: "el-icon-stopwatch" },
  239. { key: "medal-1", label: "el-icon-medal-1" },
  240. { key: "medal", label: "el-icon-medal" },
  241. { key: "trophy", label: "el-icon-trophy" },
  242. { key: "trophy-1", label: "el-icon-trophy-1" },
  243. { key: "first-aid-kit", label: "el-icon-first-aid-kit" },
  244. { key: "discover", label: "el-icon-discover" },
  245. { key: "place", label: "el-icon-place" },
  246. { key: "location", label: "el-icon-location" },
  247. { key: "location-outline", label: "el-icon-location-outline" },
  248. { key: "location-information", label: "el-icon-location-information" },
  249. { key: "add-location", label: "el-icon-add-location" },
  250. { key: "delete-location", label: "el-icon-delete-location" },
  251. { key: "map-location", label: "el-icon-map-location" },
  252. { key: "alarm-clock", label: "el-icon-alarm-clock" },
  253. { key: "timer", label: "el-icon-timer" },
  254. { key: "watch-1", label: "el-icon-watch-1" },
  255. { key: "watch", label: "el-icon-watch" },
  256. { key: "lock", label: "el-icon-lock" },
  257. { key: "unlock", label: "el-icon-unlock" },
  258. { key: "key", label: "el-icon-key" },
  259. { key: "service", label: "el-icon-service" },
  260. { key: "mobile-phone", label: "el-icon-mobile-phone" },
  261. { key: "bicycle", label: "el-icon-bicycle" },
  262. { key: "truck", label: "el-icon-truck" },
  263. { key: "ship", label: "el-icon-ship" },
  264. { key: "basketball", label: "el-icon-basketball" },
  265. { key: "football", label: "el-icon-football" },
  266. { key: "soccer", label: "el-icon-soccer" },
  267. { key: "baseball", label: "el-icon-baseball" },
  268. { key: "wind-power", label: "el-icon-wind-power" },
  269. { key: "light-rain", label: "el-icon-light-rain" },
  270. { key: "lightning", label: "el-icon-lightning" },
  271. { key: "heavy-rain", label: "el-icon-heavy-rain" },
  272. { key: "sunrise", label: "el-icon-sunrise" },
  273. { key: "sunrise-1", label: "el-icon-sunrise-1" },
  274. { key: "sunset", label: "el-icon-sunset" },
  275. { key: "sunny", label: "el-icon-sunny" },
  276. { key: "cloudy", label: "el-icon-cloudy" },
  277. { key: "partly-cloudy", label: "el-icon-partly-cloudy" },
  278. { key: "cloudy-and-sunny", label: "el-icon-cloudy-and-sunny" },
  279. { key: "moon", label: "el-icon-moon" },
  280. { key: "moon-night", label: "el-icon-moon-night" },
  281. { key: "dish", label: "el-icon-dish" },
  282. { key: "dish-1", label: "el-icon-dish-1" },
  283. { key: "food", label: "el-icon-food" },
  284. { key: "chicken", label: "el-icon-chicken" },
  285. { key: "fork-spoon", label: "el-icon-fork-spoon" },
  286. { key: "knife-fork", label: "el-icon-knife-fork" },
  287. { key: "burger", label: "el-icon-burger" },
  288. { key: "tableware", label: "el-icon-tableware" },
  289. { key: "sugar", label: "el-icon-sugar" },
  290. { key: "dessert", label: "el-icon-dessert" },
  291. { key: "ice-cream", label: "el-icon-ice-cream" },
  292. { key: "hot-water", label: "el-icon-hot-water" },
  293. { key: "water-cup", label: "el-icon-water-cup" },
  294. { key: "coffee-cup", label: "el-icon-coffee-cup" },
  295. { key: "cold-drink", label: "el-icon-cold-drink" },
  296. { key: "goblet", label: "el-icon-goblet" },
  297. { key: "goblet-full", label: "el-icon-goblet-full" },
  298. { key: "goblet-square", label: "el-icon-goblet-square" },
  299. { key: "goblet-square-full", label: "el-icon-goblet-square-full" },
  300. { key: "refrigerator", label: "el-icon-refrigerator" },
  301. { key: "grape", label: "el-icon-grape" },
  302. { key: "watermelon", label: "el-icon-watermelon" },
  303. { key: "cherry", label: "el-icon-cherry" },
  304. { key: "apple", label: "el-icon-apple" },
  305. { key: "pear", label: "el-icon-pear" },
  306. { key: "orange", label: "el-icon-orange" },
  307. { key: "coffee", label: "el-icon-coffee" },
  308. { key: "ice-tea", label: "el-icon-ice-tea" },
  309. { key: "ice-drink", label: "el-icon-ice-drink" },
  310. { key: "potato-strips", label: "el-icon-potato-strips" },
  311. { key: "lollipop", label: "el-icon-lollipop" },
  312. { key: "ice-cream-square", label: "el-icon-ice-cream-square" },
  313. { key: "ice-cream-round", label: "el-icon-ice-cream-round" }
  314. ],
  315. value: ""
  316. };
  317. },
  318. props: {
  319. meta: {
  320. default: function() {
  321. return {};
  322. },
  323. type: Object
  324. }
  325. },
  326. methods: {}
  327. };
  328. </script>
  329. <style lang="scss">
  330. .icon {
  331. float: left;
  332. color: rgb(132, 146, 166);
  333. font-size: 13px;
  334. line-height: 34px;
  335. margin-right: 10px;
  336. }
  337. .gva-select .el-input__inner {
  338. padding:0 30px !important
  339. }
  340. </style>