This commit is contained in:
2025-10-29 15:32:26 +08:00
parent d90614805b
commit b7462657cd
78921 changed files with 2753938 additions and 71 deletions

View File

@@ -0,0 +1,19 @@
<?php
namespace addon\diy_default1\component\controller;
use app\component\controller\BaseDiyView;
/**
* 文本·组件
*/
class TextExtend extends BaseDiyView
{
/**
* 后台编辑界面
*/
public function design()
{
return $this->fetch("text_extend/design.html");
}
}

View File

@@ -0,0 +1,3 @@
@CHARSET "UTF-8";
/*标题组件*/
.component-title-extend h2{color: #0cc361;}

View File

@@ -0,0 +1,40 @@
<nc-component :data="data[index]" class="component-title-extend">
<!-- 预览 -->
<template slot="preview">
<div class="preview-box" :style="{ backgroundColor: nc.componentBgColor,
borderTopLeftRadius: (nc.componentAngle == 'round' ? nc.topAroundRadius + 'px' : 0),
borderTopRightRadius: (nc.componentAngle == 'round' ? nc.topAroundRadius + 'px' : 0),
borderBottomLeftRadius: (nc.componentAngle == 'round' ? nc.bottomAroundRadius + 'px' : 0),
borderBottomRightRadius: (nc.componentAngle == 'round' ? nc.bottomAroundRadius + 'px' : 0) }">
<h2>我是扩展标题组件</h2>
</div>
</template>
<!-- 内容编辑 -->
<template slot="edit-content">
<template v-if="nc.lazyLoad">
<div class="template-edit-title">
<h3>风格设置</h3>
<text-extend-style></text-extend-style>
</div>
</template>
</template>
<!-- 样式编辑 -->
<template slot="edit-style">
<template v-if="nc.lazyLoad">
<div class="template-edit-title">
<h3>标题样式</h3>
</div>
</template>
</template>
<!-- 资源 -->
<template slot="resource">
<js>
</js>
<css src="{$resource_path}/css/design.css"></css>
<js src="{$resource_path}/js/design.js"></js>
</template>
</nc-component>

View File

@@ -0,0 +1,25 @@
var styleExtendHtml = '<div style="display:none;"></div>';
Vue.component("text-extend-style", {
template: styleExtendHtml,
data: function () {
return {
data: this.$parent.data,
list: {},
}
},
created: function () {
if (!this.$parent.data.verify) this.$parent.data.verify = [];
this.$parent.data.verify.push(this.verify);//加载验证方法
this.$parent.data.ignore = ['elementAngle', 'elementBgColor']; //加载忽略内容 -- 其他设置中的属性设置
this.$parent.data.ignoreLoad = true; // 等待忽略数组赋值后加载
},
methods: {
verify: function (index) {
var res = {code: true, message: ""};
return res;
},
}
});

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,13 @@
<?php
// 事件定义文件
return [
'bind' => [
],
'listen' => [
],
'subscribe' => [
],
];

View File

@@ -0,0 +1,21 @@
<?php
/**
*/
return [
'name' => 'diy_default1',
'title' => '官方模板一',
'description' => '官方默认模板(一)',
'type' => 'system', //插件类型 system :系统插件(自动安装), business:业务插件 promotion:营销插件 tool:工具插件
'status' => 1,
'author' => '',
'version' => '5.3.1',
'version_no' => '525231212001',
'content' => '',
];

View File

@@ -0,0 +1,6 @@
<?php
// +----------------------------------------------------------------------
// | 平台端菜单设置
// +----------------------------------------------------------------------
return [
];

View File

@@ -0,0 +1,27 @@
<?php
/**
*/
namespace addon\diy_default1\event;
/**
* 应用安装
*/
class Install
{
/**
* 执行安装
*/
public function handle()
{
return success();
}
}

View File

@@ -0,0 +1,26 @@
<?php
/**
*/
namespace addon\diy_default1\event;
/**
* 应用卸载
*/
class UnInstall
{
/**
* 执行卸载
*/
public function handle()
{
return success();
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1,24 @@
@font-face {
font-family: "icon-comp-diy-default";
src: url('https://cdn3.codesign.qq.com/icons/qwKrMZexEB0k1md/latest/iconfont.eot?t=b4bdbe9750ee7eeab00a620fe569540e'); /* IE9 */
src: url('https://cdn3.codesign.qq.com/icons/qwKrMZexEB0k1md/latest/iconfont.eot?t=b4bdbe9750ee7eeab00a620fe569540e#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('https://cdn3.codesign.qq.com/icons/qwKrMZexEB0k1md/latest/iconfont.woff?t=b4bdbe9750ee7eeab00a620fe569540e') format('woff2'),
url('https://cdn3.codesign.qq.com/icons/qwKrMZexEB0k1md/latest/iconfont.woff?t=b4bdbe9750ee7eeab00a620fe569540e') format('woff'), /* chrome、firefox */
url('https://cdn3.codesign.qq.com/icons/qwKrMZexEB0k1md/latest/iconfont.ttf?t=b4bdbe9750ee7eeab00a620fe569540e') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/
url('https://cdn3.codesign.qq.com/icons/qwKrMZexEB0k1md/latest/iconfont.svg?t=b4bdbe9750ee7eeab00a620fe569540e#icon-comp-diy-default') format('svg'); /* iOS 4.1- */
}
.icon-comp-diy-default {
font-family: "icon-comp-diy-default" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-kuozhanxinxi:before {
content: "\e001";
}
.icon-wenben:before {
content: "\e002";
}

View File

@@ -0,0 +1,69 @@
@font-face {
font-family: "icondiy-my-template";
src: url('https://cdn3.codesign.qq.com/icons/r2nL6jg1z80pJXV/latest/iconfont.eot?t=20d1e70f3aeb7dcbee56c813164786bc'); /* IE9 */
src: url('https://cdn3.codesign.qq.com/icons/r2nL6jg1z80pJXV/latest/iconfont.eot?t=20d1e70f3aeb7dcbee56c813164786bc#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('https://cdn3.codesign.qq.com/icons/r2nL6jg1z80pJXV/latest/iconfont.woff?t=20d1e70f3aeb7dcbee56c813164786bc') format('woff2'),
url('https://cdn3.codesign.qq.com/icons/r2nL6jg1z80pJXV/latest/iconfont.woff?t=20d1e70f3aeb7dcbee56c813164786bc') format('woff'), /* chrome、firefox */
url('https://cdn3.codesign.qq.com/icons/r2nL6jg1z80pJXV/latest/iconfont.ttf?t=20d1e70f3aeb7dcbee56c813164786bc') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/
url('https://cdn3.codesign.qq.com/icons/r2nL6jg1z80pJXV/latest/iconfont.svg?t=20d1e70f3aeb7dcbee56c813164786bc#icondiy-my-template') format('svg'); /* iOS 4.1- */
}
.icondiy-my-template {
font-family: "icondiy-my-template" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-furniture-taideng:before {
content: "\e001";
}
.icon-furniture-deng:before {
content: "\e002";
}
.icon-furniture-szt:before {
content: "\e003";
}
.icon-furniture-safa:before {
content: "\e004";
}
.icon-furniture-bed:before {
content: "\e005";
}
.icon-furniture-yaoyi:before {
content: "\e006";
}
.icon-furniture-guizi:before {
content: "\e007";
}
.icon-furniture-lunyi:before {
content: "\e008";
}
.icon-furniture-fj:before {
content: "\e009";
}
.icon-furniture-xicaichi:before {
content: "\e00a";
}
.icon-building-glou:before {
content: "\e00b";
}
.icon-building-gaolou:before {
content: "\e00c";
}
.icon-building-glt:before {
content: "\e00d";
}
.icon-animal-hippo:before {
content: "\e00e";
}
.icon-animal-pig:before {
content: "\e00f";
}
.icon-animal-dolphin:before {
content: "\e010";
}
.icon-animal-duck:before {
content: "\e011";
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

View File

@@ -0,0 +1,26 @@
<template>
<view>
<text style="font-weight: bold;font-size: 20px;color: #0cc361;">我是扩展标题组件</text>
</view>
</template>
<script>
// 扩展标题组件
export default {
name: 'diy-text-extend',
props: {
value: {
type: Object
}
},
data() {
return {};
},
computed: {},
created() {
},
methods: {}
};
</script>
<style></style>

View File

@@ -0,0 +1,148 @@
<template>
<view class="main" id="bgMusic">
<view class="icon" :class="{ ran: status }" @click="musicChange">
<image :src="$util.img('upload/uniapp/audio-icon-new.png')" mode="widthFix" :style="icon_style"></image>
</view>
<view class="musicPlay" @touchstart.stop="playTo" v-if="musicPlay"></view>
</view>
</template>
<script>
export default {
props: {
sizi: {
default: '0.4',
type: [Number, String]
},
autoplay: {
default: true,
type: Boolean
},
musicSrc: {
default: '',
type: String
}
},
data() {
return {
icon_style: {},
audioMusic: {},
status: false,
musicPlay: true
};
},
beforeDestroy() {
this.pauseTo();
},
watch: {
'$route.path'(newVal, oldVal) {
if (newVal != '/promotion/pintuanfission/detail') {
this.pauseTo();
}
}
},
mounted() {
this.icon_style = {
width: this.sizi + 'rem'
// height: this.sizi + 'rem'
};
this.$nextTick().then(res => {
const audioMusic = uni.createInnerAudioContext();
audioMusic.loop = true;
audioMusic.onPlay(() => {
this.status = true;
this.musicPlay = false;
});
audioMusic.onPause(() => {
this.status = false;
});
audioMusic.onError(err => {
this.musicPlay = false;
});
audioMusic.src = this.musicSrc;
if (this.autoplay) audioMusic.autoplay = true;
this.audioMusic = audioMusic;
if (!this.autoplay) return;
setTimeout(() => {
if (typeof WeixinJSBridge == 'undefined') {
this.playTo();
} else {
WeixinJSBridge.invoke('getNetworkType', {}, e => {
this.playTo();
});
}
}, 500);
});
},
methods: {
playTo() {
this.audioMusic.play();
},
pauseTo() {
this.audioMusic.pause();
},
musicChange() {
const status = this.status;
if (status) {
this.audioMusic.pause();
} else {
this.audioMusic.play();
}
}
},
destroyed() {}
};
</script>
<style lang="scss" scoped>
.icon {
position: fixed;
top: 0.6rem;
right: 0.2rem;
z-index: 999;
image {
width: 0.4rem;
height: 0.4rem;
}
}
.ran {
image {
animation: turn 1s linear infinite;
}
}
@keyframes turn {
0% {
-webkit-transform: rotate(0deg);
}
25% {
-webkit-transform: rotate(90deg);
}
50% {
-webkit-transform: rotate(180deg);
}
75% {
-webkit-transform: rotate(270deg);
}
100% {
-webkit-transform: rotate(360deg);
}
}
.musicPlay {
position: fixed;
top: 0;
bottom: 0;
right: 0;
left: 0;
background-color: rgba($color: #000000, $alpha: 0);
z-index: 9999;
}
</style>

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@@ -0,0 +1,16 @@
<template>
<page-meta :page-style="themeColor"></page-meta>
<view>
<text>我的购物车</text>
</view>
</template>
<script>
export default {
components: {
},
};
</script>
<style lang="scss">
</style>

View File

@@ -0,0 +1,9 @@
<template>
<page-meta :page-style="themeColor"></page-meta>
<view>
<text>这是我的营销活动 index</text>
</view>
</template>
<script>
</script>