From 276f4168e6f325748fc05a204b02390986f68b29 Mon Sep 17 00:00:00 2001 From: fxy060608 Date: Thu, 5 Aug 2021 11:25:53 +0800 Subject: [PATCH] feat(app): v-text,v-html --- packages/uni-app-plus/dist/uni-app-service.es.js | 1 + packages/uni-app-plus/dist/uni-app-view.umd.js | 6 ++++++ .../src/view/framework/dom/elements/UniElement.ts | 6 ++++++ packages/uni-shared/dist/uni-shared.cjs.js | 4 ++++ packages/uni-shared/dist/uni-shared.d.ts | 4 ++++ packages/uni-shared/dist/uni-shared.es.js | 4 +++- packages/uni-shared/src/vdom/Node.ts | 2 ++ packages/uni-shared/src/vdom/index.ts | 2 ++ 8 files changed, 28 insertions(+), 1 deletion(-) diff --git a/packages/uni-app-plus/dist/uni-app-service.es.js b/packages/uni-app-plus/dist/uni-app-service.es.js index 8c15fa677..14aa84b83 100644 --- a/packages/uni-app-plus/dist/uni-app-service.es.js +++ b/packages/uni-app-plus/dist/uni-app-service.es.js @@ -8588,6 +8588,7 @@ var serviceContext = (function (vue) { let timeout; const showLoading = defineAsyncApi(API_SHOW_LOADING, (args, callbacks) => _showToast(extend({}, args, { type: 'loading', + icon: 'loading', }), callbacks), ShowLoadingProtocol, ShowLoadingOptions); const _showToast = ({ title = '', icon = 'success', image = '', duration = 1500, mask = false, position, // @ts-ignore ToastType diff --git a/packages/uni-app-plus/dist/uni-app-view.umd.js b/packages/uni-app-plus/dist/uni-app-view.umd.js index ccffb1156..b3d7d32d6 100644 --- a/packages/uni-app-plus/dist/uni-app-view.umd.js +++ b/packages/uni-app-plus/dist/uni-app-view.umd.js @@ -276,6 +276,8 @@ }; const ATTR_CLASS = "class"; const ATTR_STYLE = "style"; + const ATTR_INNER_HTML = "innerHTML"; + const ATTR_TEXT_CONTENT = "textContent"; const ATTR_V_SHOW = ".vShow"; const ACTION_TYPE_PAGE_CREATE = 1; const ACTION_TYPE_PAGE_CREATED = 2; @@ -6117,6 +6119,10 @@ patchStyle(this.$, value); } else if (name === ATTR_V_SHOW) { patchVShow(this.$, value); + } else if (name === ATTR_INNER_HTML) { + this.$.innerHTML = value; + } else if (name === ATTR_TEXT_CONTENT) { + this.setText(value); } else { this.setAttribute(name, value); } diff --git a/packages/uni-app-plus/src/view/framework/dom/elements/UniElement.ts b/packages/uni-app-plus/src/view/framework/dom/elements/UniElement.ts index d0ba766cf..54866d945 100644 --- a/packages/uni-app-plus/src/view/framework/dom/elements/UniElement.ts +++ b/packages/uni-app-plus/src/view/framework/dom/elements/UniElement.ts @@ -2,6 +2,8 @@ import { hasOwn } from '@vue/shared' import { ATTR_CLASS, ATTR_STYLE, + ATTR_INNER_HTML, + ATTR_TEXT_CONTENT, ATTR_V_SHOW, UniNodeJSON, } from '@dcloudio/uni-shared' @@ -79,6 +81,10 @@ export class UniElement extends UniNode { patchStyle(this.$, value as string | Record) } else if (name === ATTR_V_SHOW) { patchVShow(this.$ as VShowElement, value) + } else if (name === ATTR_INNER_HTML) { + this.$.innerHTML = value as string + } else if (name === ATTR_TEXT_CONTENT) { + this.setText(value as string) } else { this.setAttribute(name, value as string) } diff --git a/packages/uni-shared/dist/uni-shared.cjs.js b/packages/uni-shared/dist/uni-shared.cjs.js index 83aefa571..4a0b3c6a7 100644 --- a/packages/uni-shared/dist/uni-shared.cjs.js +++ b/packages/uni-shared/dist/uni-shared.cjs.js @@ -572,6 +572,8 @@ class UniNode extends UniEventTarget { } const ATTR_CLASS = 'class'; const ATTR_STYLE = 'style'; +const ATTR_INNER_HTML = 'innerHTML'; +const ATTR_TEXT_CONTENT = 'textContent'; const ATTR_V_SHOW = '.vShow'; class UniBaseNode extends UniNode { constructor(nodeType, nodeName, container) { @@ -951,7 +953,9 @@ exports.ACTION_TYPE_REMOVE_EVENT = ACTION_TYPE_REMOVE_EVENT; exports.ACTION_TYPE_SET_ATTRIBUTE = ACTION_TYPE_SET_ATTRIBUTE; exports.ACTION_TYPE_SET_TEXT = ACTION_TYPE_SET_TEXT; exports.ATTR_CLASS = ATTR_CLASS; +exports.ATTR_INNER_HTML = ATTR_INNER_HTML; exports.ATTR_STYLE = ATTR_STYLE; +exports.ATTR_TEXT_CONTENT = ATTR_TEXT_CONTENT; exports.ATTR_V_SHOW = ATTR_V_SHOW; exports.BACKGROUND_COLOR = BACKGROUND_COLOR; exports.BUILT_IN_TAGS = BUILT_IN_TAGS; diff --git a/packages/uni-shared/dist/uni-shared.d.ts b/packages/uni-shared/dist/uni-shared.d.ts index 3c7271b9d..a51113d0e 100644 --- a/packages/uni-shared/dist/uni-shared.d.ts +++ b/packages/uni-shared/dist/uni-shared.d.ts @@ -38,8 +38,12 @@ export declare function addFont(family: string, source: string, desc?: FontFaceD export declare const ATTR_CLASS = "class"; +export declare const ATTR_INNER_HTML = "innerHTML"; + export declare const ATTR_STYLE = "style"; +export declare const ATTR_TEXT_CONTENT = "textContent"; + export declare const ATTR_V_SHOW = ".vShow"; export declare const BACKGROUND_COLOR = "#f7f7f7"; diff --git a/packages/uni-shared/dist/uni-shared.es.js b/packages/uni-shared/dist/uni-shared.es.js index 69830ce32..bb70355f1 100644 --- a/packages/uni-shared/dist/uni-shared.es.js +++ b/packages/uni-shared/dist/uni-shared.es.js @@ -568,6 +568,8 @@ class UniNode extends UniEventTarget { } const ATTR_CLASS = 'class'; const ATTR_STYLE = 'style'; +const ATTR_INNER_HTML = 'innerHTML'; +const ATTR_TEXT_CONTENT = 'textContent'; const ATTR_V_SHOW = '.vShow'; class UniBaseNode extends UniNode { constructor(nodeType, nodeName, container) { @@ -935,4 +937,4 @@ function getEnvLocale() { return (lang && lang.replace(/[.:].*/, '')) || 'en'; } -export { ACTION_TYPE_ADD_EVENT, ACTION_TYPE_CREATE, ACTION_TYPE_EVENT, ACTION_TYPE_INSERT, ACTION_TYPE_PAGE_CREATE, ACTION_TYPE_PAGE_CREATED, ACTION_TYPE_REMOVE, ACTION_TYPE_REMOVE_ATTRIBUTE, ACTION_TYPE_REMOVE_EVENT, ACTION_TYPE_SET_ATTRIBUTE, ACTION_TYPE_SET_TEXT, ATTR_CLASS, ATTR_STYLE, ATTR_V_SHOW, BACKGROUND_COLOR, BUILT_IN_TAGS, COMPONENT_NAME_PREFIX, COMPONENT_PREFIX, COMPONENT_SELECTOR_PREFIX, DATA_RE, EventChannel, EventModifierFlags, JSON_PROTOCOL, NAVBAR_HEIGHT, NODE_TYPE_COMMENT, NODE_TYPE_ELEMENT, NODE_TYPE_PAGE, NODE_TYPE_TEXT, ON_ADD_TO_FAVORITES, ON_APP_ENTER_BACKGROUND, ON_APP_ENTER_FOREGROUND, ON_BACK_PRESS, ON_ERROR, ON_HIDE, ON_KEYBOARD_HEIGHT_CHANGE, ON_LAUNCH, ON_LOAD, ON_NAVIGATION_BAR_BUTTON_TAP, ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED, ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED, ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED, ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED, ON_PAGE_NOT_FOUND, ON_PAGE_SCROLL, ON_PULL_DOWN_REFRESH, ON_REACH_BOTTOM, ON_REACH_BOTTOM_DISTANCE, ON_READY, ON_RESIZE, ON_SHARE_APP_MESSAGE, ON_SHARE_TIMELINE, ON_SHOW, ON_TAB_ITEM_TAP, ON_THEME_CHANGE, ON_UNHANDLE_REJECTION, ON_UNLOAD, ON_WEB_INVOKE_APP_SERVICE, PLUS_RE, PRIMARY_COLOR, RESPONSIVE_MIN_WIDTH, SCHEME_RE, SELECTED_COLOR, TABBAR_HEIGHT, TAGS, UNI_SSR, UNI_SSR_DATA, UNI_SSR_GLOBAL_DATA, UNI_SSR_STORE, UNI_SSR_TITLE, UniBaseNode, UniCommentNode, UniElement, UniEvent, UniInputElement, UniNode, UniTextAreaElement, UniTextNode, WEB_INVOKE_APPSERVICE, addFont, cache, cacheStringFunction, callOptions, createRpx2Unit, createUniEvent, debounce, decode, decodedQuery, defaultRpx2Unit, formatDateTime, formatLog, getCustomDataset, getEnvLocale, getLen, initCustomDataset, invokeArrayFns, isBuiltInComponent, isCustomElement, isNativeTag, isServiceCustomElement, isServiceNativeTag, normalizeDataset, normalizeEventType, normalizeTarget, once, parseEventName, parseQuery, parseUrl, passive, plusReady, removeLeadingSlash, sanitise, scrollTo, stringifyQuery, updateElementStyle }; +export { ACTION_TYPE_ADD_EVENT, ACTION_TYPE_CREATE, ACTION_TYPE_EVENT, ACTION_TYPE_INSERT, ACTION_TYPE_PAGE_CREATE, ACTION_TYPE_PAGE_CREATED, ACTION_TYPE_REMOVE, ACTION_TYPE_REMOVE_ATTRIBUTE, ACTION_TYPE_REMOVE_EVENT, ACTION_TYPE_SET_ATTRIBUTE, ACTION_TYPE_SET_TEXT, ATTR_CLASS, ATTR_INNER_HTML, ATTR_STYLE, ATTR_TEXT_CONTENT, ATTR_V_SHOW, BACKGROUND_COLOR, BUILT_IN_TAGS, COMPONENT_NAME_PREFIX, COMPONENT_PREFIX, COMPONENT_SELECTOR_PREFIX, DATA_RE, EventChannel, EventModifierFlags, JSON_PROTOCOL, NAVBAR_HEIGHT, NODE_TYPE_COMMENT, NODE_TYPE_ELEMENT, NODE_TYPE_PAGE, NODE_TYPE_TEXT, ON_ADD_TO_FAVORITES, ON_APP_ENTER_BACKGROUND, ON_APP_ENTER_FOREGROUND, ON_BACK_PRESS, ON_ERROR, ON_HIDE, ON_KEYBOARD_HEIGHT_CHANGE, ON_LAUNCH, ON_LOAD, ON_NAVIGATION_BAR_BUTTON_TAP, ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED, ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED, ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED, ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED, ON_PAGE_NOT_FOUND, ON_PAGE_SCROLL, ON_PULL_DOWN_REFRESH, ON_REACH_BOTTOM, ON_REACH_BOTTOM_DISTANCE, ON_READY, ON_RESIZE, ON_SHARE_APP_MESSAGE, ON_SHARE_TIMELINE, ON_SHOW, ON_TAB_ITEM_TAP, ON_THEME_CHANGE, ON_UNHANDLE_REJECTION, ON_UNLOAD, ON_WEB_INVOKE_APP_SERVICE, PLUS_RE, PRIMARY_COLOR, RESPONSIVE_MIN_WIDTH, SCHEME_RE, SELECTED_COLOR, TABBAR_HEIGHT, TAGS, UNI_SSR, UNI_SSR_DATA, UNI_SSR_GLOBAL_DATA, UNI_SSR_STORE, UNI_SSR_TITLE, UniBaseNode, UniCommentNode, UniElement, UniEvent, UniInputElement, UniNode, UniTextAreaElement, UniTextNode, WEB_INVOKE_APPSERVICE, addFont, cache, cacheStringFunction, callOptions, createRpx2Unit, createUniEvent, debounce, decode, decodedQuery, defaultRpx2Unit, formatDateTime, formatLog, getCustomDataset, getEnvLocale, getLen, initCustomDataset, invokeArrayFns, isBuiltInComponent, isCustomElement, isNativeTag, isServiceCustomElement, isServiceNativeTag, normalizeDataset, normalizeEventType, normalizeTarget, once, parseEventName, parseQuery, parseUrl, passive, plusReady, removeLeadingSlash, sanitise, scrollTo, stringifyQuery, updateElementStyle }; diff --git a/packages/uni-shared/src/vdom/Node.ts b/packages/uni-shared/src/vdom/Node.ts index f792ad4a1..546286bdf 100644 --- a/packages/uni-shared/src/vdom/Node.ts +++ b/packages/uni-shared/src/vdom/Node.ts @@ -254,6 +254,8 @@ export interface UniNodeJSON { export const ATTR_CLASS = 'class' export const ATTR_STYLE = 'style' +export const ATTR_INNER_HTML = 'innerHTML' +export const ATTR_TEXT_CONTENT = 'textContent' export const ATTR_V_SHOW = '.vShow' export class UniBaseNode extends UniNode { attributes: Record = Object.create(null) diff --git a/packages/uni-shared/src/vdom/index.ts b/packages/uni-shared/src/vdom/index.ts index 9e96c6566..5b427c674 100644 --- a/packages/uni-shared/src/vdom/index.ts +++ b/packages/uni-shared/src/vdom/index.ts @@ -10,6 +10,8 @@ export { export { ATTR_CLASS, ATTR_STYLE, + ATTR_INNER_HTML, + ATTR_TEXT_CONTENT, ATTR_V_SHOW, NODE_TYPE_PAGE, NODE_TYPE_ELEMENT, -- GitLab