taro-hooks
Version:
为 Taro 而设计的 Hooks Library
30 lines (29 loc) • 1.13 kB
JavaScript
var _excluded = ["textStyle"];
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
Object.defineProperty(exports, "__esModule", {
value: true
});
var tslib_1 = require("tslib");
var taro_1 = require("@tarojs/taro");
var core_1 = require("@taro-hooks/core");
var usePromise_1 = tslib_1.__importDefault(require("../usePromise"));
function useBackground(option) {
var setColor = (0, usePromise_1["default"])(taro_1.setBackgroundColor);
var setStyleAsync = (0, usePromise_1["default"])(taro_1.setBackgroundTextStyle);
var setStyle = function setStyle(textStyle) {
return setStyleAsync({
textStyle: textStyle
});
};
(0, core_1.useEffect)(function () {
if (option) {
var textStyle = option.textStyle,
colorOption = _objectWithoutPropertiesLoose(option, _excluded);
setColor(colorOption);
textStyle && setStyle(textStyle);
}
}, [option]);
return [setColor, setStyle];
}
exports["default"] = useBackground;
;