自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

營(yíng)銷搭建系統(tǒng)的設(shè)計(jì)思想復(fù)盤

開發(fā) 前端
為了讓不同能力團(tuán)隊(duì)共享信息, 我們需要利用信息化技術(shù)來設(shè)計(jì)一套“粘合劑”, 讓“企業(yè)發(fā)動(dòng)機(jī)”高效運(yùn)轉(zhuǎn). 這個(gè)“粘合劑” 就是我們說的數(shù)字(智)化營(yíng)銷系統(tǒng). 它不會(huì)侵入到企業(yè)的具體業(yè)務(wù)中, 而是通過連接企業(yè)數(shù)字資產(chǎn), 實(shí)現(xiàn)對(duì)外品宣,獲客和需求反饋. 更多充當(dāng)?shù)氖情T戶和反饋系統(tǒng)的作用。

嗨, 大家好, 我是徐小夕, 之前分享了很多可視化低代碼相關(guān)的技術(shù)實(shí)踐和開源項(xiàng)目, 今天繼續(xù)和大家分享一下如何通過可視化搭建技術(shù)設(shè)計(jì)高效的企業(yè)營(yíng)銷配置系統(tǒng)。

背景

隨著技術(shù)的飛速發(fā)展和行業(yè)高內(nèi)聚的競(jìng)爭(zhēng)內(nèi)卷, 企業(yè)數(shù)字化轉(zhuǎn)型更加迫在眉睫. 很多傳統(tǒng)企業(yè)為了提高盈利能力, 在流量,轉(zhuǎn)化和口碑上投入了巨大的成本, 比如:

  • 招募(或擴(kuò)大)優(yōu)質(zhì)銷售團(tuán)隊(duì)。
  • 廣告投放(為了更多的流量和轉(zhuǎn)化)。
  • 系統(tǒng)搭建(更高效的管理企業(yè)進(jìn)銷存)。
  • 策略運(yùn)營(yíng)分析(更精準(zhǔn)的投流獲客和產(chǎn)品品牌力打造)。
  • 其他企業(yè)策略目標(biāo)。

為了讓不同能力團(tuán)隊(duì)共享信息, 我們需要利用信息化技術(shù)來設(shè)計(jì)一套“粘合劑”, 讓“企業(yè)發(fā)動(dòng)機(jī)”高效運(yùn)轉(zhuǎn). 這個(gè)“粘合劑” 就是我們說的數(shù)字(智)化營(yíng)銷系統(tǒng). 它不會(huì)侵入到企業(yè)的具體業(yè)務(wù)中, 而是通過連接企業(yè)數(shù)字資產(chǎn), 實(shí)現(xiàn)對(duì)外品宣,獲客和需求反饋. 更多充當(dāng)?shù)氖情T戶和反饋系統(tǒng)的作用。

設(shè)計(jì)實(shí)現(xiàn)方案

為了實(shí)現(xiàn)營(yíng)銷數(shù)字化系統(tǒng), 我們一般會(huì)采用三種方案:

  • 傳統(tǒng)業(yè)務(wù)開發(fā)型
  • 配置化營(yíng)銷中心
  • 可視化營(yíng)銷搭建平臺(tái)

1、傳統(tǒng)業(yè)務(wù)開發(fā)型

早期我們更多的企業(yè)營(yíng)銷宣傳頁(yè)面大多采用這種模式, 面向營(yíng)銷活動(dòng)或者業(yè)務(wù)活動(dòng)設(shè)計(jì)針對(duì)性的頁(yè)面. 但是隨著企業(yè)規(guī)模的壯大和活動(dòng)需求規(guī)模化之后, 普通頁(yè)面開發(fā)意味著人力成本的線性增加, 我們需要通過“堆人”來實(shí)現(xiàn)業(yè)務(wù)需求.

從前端技術(shù)側(cè), 為了進(jìn)一步提高研發(fā)效率, 前端程序員不得不去思考如何復(fù)用的問題. 但是實(shí)際情況卻不容樂觀. 從我個(gè)人研發(fā)經(jīng)驗(yàn)的角度, 對(duì)定制型營(yíng)銷場(chǎng)景開發(fā)我們可以采用如下措施提高研發(fā)效率:

(1)搭建營(yíng)銷組件庫(kù) / 業(yè)務(wù)sdk抽象

我們可以在開發(fā)之初就定好一個(gè)可擴(kuò)展的技術(shù)方案, 針對(duì)活動(dòng)/營(yíng)銷頁(yè)面 以組件化的方式開發(fā), 然后將業(yè)務(wù)功能沉淀為可復(fù)用的技術(shù)資產(chǎn). 我們可以用vue / react等技術(shù)框架來搭建組件庫(kù)工程, 這塊我之前寫過一篇 從零搭建前端組件庫(kù)系統(tǒng) 的工程, 大家感興趣可以參考一下。

更近一步的, 任何頁(yè)面都離不開通用能力和埋點(diǎn)監(jiān)控, 如下:

這些 工具函數(shù) 和 業(yè)務(wù)sdk 未來會(huì)在不用需求頁(yè)面中反復(fù)使用, 所以我們也可以更進(jìn)一步的封裝和抽象。

(2)搭建通用腳手架, 實(shí)現(xiàn)基礎(chǔ)工程和業(yè)務(wù)方案的復(fù)用(配置化)

通用腳手架可以讓前端團(tuán)隊(duì)更高效的復(fù)用技術(shù)資產(chǎn), 比如不同技術(shù)同事開發(fā)不同的需求時(shí), 我們能使用前人積累的技術(shù)實(shí)踐, 省去了前期的調(diào)研和試錯(cuò)成本. 一個(gè)成熟的前端腳手架包括:

  • 基礎(chǔ)的項(xiàng)目工程配置
  • 路由配置(baseUrl, public, outPut等)
  • 分包策略
  • 模塊加載器Loader(比如對(duì)svg, png, pdf, excel, css等處理)
  • 代碼插件(代碼壓縮, 分割, 按需打包, hot reload等)
  • 服務(wù)proxy支持
  • 微前端配置等

當(dāng)然我們還可以參考市面上比較成熟的前端工程解決方案, 比如 umi, vite等.

(3)建立可配置的模版庫(kù)

雖然我們用定制代碼的方案無法很輕易的實(shí)現(xiàn)類似配置平臺(tái)或者搭建平臺(tái)的高可配性, 但是我們?nèi)匀豢梢栽O(shè)計(jì)一種偽配置化方案. 類似下面的配置:

{
  "title": "第3期企業(yè)數(shù)字化宣講",
  "layout": {
    "header": [],
    "main": [],
    "footer": []
  },
  "share_icon": "微信分享icon",
  "share_desc": "Dooring,  讓頁(yè)面制作更簡(jiǎn)單",
  "track": true // 是否啟用埋點(diǎn)
  "api_path": "https://xxxx.com"
}

然后在頁(yè)面中設(shè)計(jì)一套模版引擎, 來動(dòng)態(tài)讀取json配置, 需要自定義的部分即可自定義開發(fā). 我們通過這種方式, 就可以用一套基礎(chǔ)模式, 快速生成自定義的頁(yè)面模版, 從而提高頁(yè)面搭建效率。

在接下來分享的方案中我會(huì)介紹具體的實(shí)現(xiàn)思路。

2、配置化營(yíng)銷中心

圖片

相信大部分互聯(lián)網(wǎng)企業(yè)都做過類似配置化平臺(tái)的項(xiàng)目, 營(yíng)銷板塊也不例外. 當(dāng)然要做配置化平臺(tái), 需要產(chǎn)品, 運(yùn)營(yíng)和技術(shù)的通力協(xié)作, 也就意味著要脫離技術(shù)多方?jīng)Q策. 這要求產(chǎn)品和運(yùn)營(yíng)需要對(duì)整體業(yè)務(wù)做一個(gè)通用性的抽象, 并通過技術(shù)人員轉(zhuǎn)化為可實(shí)現(xiàn)并被需求方低成本理解的配置平臺(tái).

對(duì)于配置系統(tǒng)方案, 我之前寫過一篇文章《基于react/vue搭建一個(gè)通用的表單管理配置平臺(tái)》, 大家感興趣可以參考一下, 本質(zhì)上也是將抽象業(yè)務(wù)做統(tǒng)一封裝, 從而在技術(shù)層面實(shí)現(xiàn)按需渲染(配置式渲染):

具體展現(xiàn)形式如下:

關(guān)于動(dòng)態(tài)配置表單的渲染模式, 我之前也提供了一種實(shí)現(xiàn)方案, 這也是目前大部分動(dòng)態(tài)表單實(shí)現(xiàn)的一種模式(標(biāo)準(zhǔn)化SDL輸出):

// 基礎(chǔ)模版數(shù)據(jù)
const tpl = [
  {
    label: '文本框',
    placeholder: '請(qǐng)輸入內(nèi)容',
    type: 'text',
    value: '',
    index: uuid(5)
  },
  {
    label: '單選框',
    type: 'radio',
    option: [{label: '男', value: 0}, {label: '女', value: 1}],
    index: uuid(5)
  },
  {
    label: '復(fù)選框',
    type: 'checkbox',
    option: [{label: '男', value: 0}, {label: '女', value: 1}],
    index: uuid(5)
  },
  {
    label: '多行文本',
    placeholder: '請(qǐng)輸入內(nèi)容',
    type: 'textarea',
    index: uuid(5)
  },
  {
    label: '選擇框',
    placeholder: '請(qǐng)選擇',
    type: 'select',
    option: [{label: '中國(guó)', value: 0}, {label: '俄羅斯', value: 1}],
    index: uuid(5)
  },
  {
    label: '文件上傳',
    type: 'upload',
    index: uuid(5)
  }
]

// 模版渲染組件
const tplMap = {
  text: {
    component: (props) => {
      const { placeholder, label } = props
      return <div className={styles.fieldOption}><span className={styles.fieldLabel}>{label}:</span><Input placeholder={placeholder} /></div>
    }
  },
  textarea: {
    component: (props) => {
      const { placeholder, label } = props
      return <div className={styles.fieldOption}><span className={styles.fieldLabel}>{label}:</span><TextArea placeholder={placeholder} /></div>
    }
  },
  radio: {
    component: (props) => {
      const { option, label } = props
      return <div className={styles.fieldOption}>
              <span className={styles.fieldLabel}>{label}:</span>
              <Radio.Group>
                {
                  option && option.map((item, i) => {
                    return <Radio style={radioStyle} value={item.value} key={item.label}>
                      { item.label }
                    </Radio>
                  })
                }
            </Radio.Group>
        </div>
    }
  },
  checkbox: {
    component: (props) => {
      const { option, label } = props
      return <div className={styles.fieldOption}>
              <span className={styles.fieldLabel}>{label}:</span>
              <Checkbox.Group>
                <Row>
                  {
                    option && option.map(item => {
                      return <Col span={16} key={item.label}>
                              <Checkbox value={item.value} style={{ lineHeight: '32px' }}>
                                { item.label }
                              </Checkbox>
                            </Col>
                    })
                  }
                </Row>
            </Checkbox.Group>
        </div>
    }
  },
  select: {
    component: (props) => {
      const { placeholder, option, label } = props
      return <div className={styles.fieldOption}>
              <span className={styles.fieldLabel}>{label}:</span>
              <Select placeholder={placeholder} style={{width: '100%'}}>
                {
                  option && option.map(item => {
                    return <Option value={item.value} key={item.label}>{item.label}</Option>
                  })
                }
            </Select>
        </div>
    }
  },
  upload: {
    component: (props) => {
      return <div className={styles.fieldOption}>
              <span className={styles.fieldLabel}>{props.label}:</span>
              <Upload
              listType="picture-card"
              className="avatar-uploader"
              showUploadList={false}
              action="https://www.mocky.io/v2/5cc8019d300000980a055e76"
            >
              <div>+</div>
            </Upload>
        </div>
    }
  }
}

export {
  tpl,
  tplMap
}

當(dāng)然市場(chǎng)上也有比較成熟的開源方案, 比如 family, XRender等。

3、可視化營(yíng)銷搭建平臺(tái)

以上我們可以看到, 從定制化代碼到配置化方案, 技術(shù)架構(gòu)有了漸進(jìn)式升級(jí), 接下來繼續(xù)分享一種更低成本的方案: 可視化搭建平臺(tái)。

可視化搭建平臺(tái)是一種建立在底層通用規(guī)則之上的通過拖拽+配置化來實(shí)現(xiàn)頁(yè)面生產(chǎn)能力的一種高效率解決方案. 它主要解決的問題如下:

  • 企業(yè)數(shù)據(jù)孤島(應(yīng)用間數(shù)據(jù)共享,互通困難)。
  • 企業(yè)定制化需求日益增加(不同行業(yè)賦能不同的應(yīng)用場(chǎng)景, 千“客”千面)。
  • IT人才供不應(yīng)求。
  • 溝通成本,研發(fā)成本, 研發(fā)周期吃緊。
  • 產(chǎn)品迭代和響應(yīng)性遲緩。

所以我們迫切需要諸如低代碼/零代碼這樣的方案, 來解決上述問題. 目前國(guó)內(nèi)有上千家企業(yè)在接觸或者落地低代碼/零代碼方案, 我之前也開源了一個(gè)解決方案H5-Dooring, 用來解決頁(yè)面生產(chǎn)效能的問題:

當(dāng)然設(shè)計(jì)可視化搭建系統(tǒng)需要考慮更多系統(tǒng)化問題, 比如:

  • 如何滿足更多的定制需求。
  • 如何對(duì)接企業(yè)數(shù)據(jù)源。
  • 如何跨場(chǎng)景, 跨多端。
  • 如何出高質(zhì)量可維護(hù)的代碼。
  • 如何保證線上頁(yè)面運(yùn)行穩(wěn)定和頁(yè)面監(jiān)控/閾值預(yù)警。

當(dāng)然并不是每家企業(yè)都有極高的要求, 所以我們需要針對(duì)企業(yè)實(shí)際需求和未來需求, 制定更合理的可視化解決方案. 關(guān)于可視化平臺(tái)的實(shí)現(xiàn)方案我之前也寫了很多文章和開源方案, 這里就不一一介紹了, 感興趣的朋友可以參考一下。

  • H5-Dooring
  • H5-Stream
  • V6.Dooring

如何利用DooringSaas快速落地營(yíng)銷配置方案

上面介紹了3種技術(shù)設(shè)計(jì)方案, 接下來我就以一個(gè)具體的案例, 來分享一下高效營(yíng)銷落地方案.

轉(zhuǎn)盤抽獎(jiǎng)營(yíng)銷頁(yè)面是我們比較熟悉的一種運(yùn)營(yíng)手段, 傳統(tǒng)開發(fā)中我們需要針對(duì)每一場(chǎng)活動(dòng)開發(fā)獨(dú)立的業(yè)務(wù)代碼, 如果我們將營(yíng)銷活動(dòng)的規(guī)則抽象出來, 并封裝業(yè)務(wù)常用的抽獎(jiǎng)組件, 并提供一定的配置靈活性, 這樣我們就能滿足大部分的營(yíng)銷活動(dòng)場(chǎng)景, 如下, 我們可以配置抽獎(jiǎng)信息, 中獎(jiǎng)比例, 中獎(jiǎng)后的一系列交互配置:

對(duì)于企業(yè)的品宣場(chǎng)景, 我們也可以從可視化搭建平臺(tái)中找到解決方案, 我們只需要對(duì)接企業(yè)資源庫(kù), 業(yè)務(wù)統(tǒng)配數(shù)據(jù)接口, 安全規(guī)范和數(shù)據(jù)上報(bào)模式, 我們就可以用可視化平臺(tái)從技術(shù)側(cè)轉(zhuǎn)化為業(yè)務(wù)側(cè)直接搭建, 近一步縮短溝通周期。

有關(guān)拖拽搭建方案, 這里筆者也分享幾個(gè)成熟方案:

  • moveable
  • react-draggable
  • Vue Easy DnD
  • Vue smooth dnd
  • V-drag
  • react-dnd

總結(jié) & 展望

后續(xù)我也會(huì)繼續(xù)分享低代碼和可視化相關(guān)的技術(shù)方案和設(shè)計(jì)模式, 如果大家感興趣也可以隨時(shí)和我交流. 比如:

  • 如何實(shí)現(xiàn)跨多端的出碼方案。
  • 業(yè)務(wù)層零代碼如何快速落地企業(yè)最佳實(shí)踐。
  • 桌面端可視化平臺(tái)的價(jià)值最大化。
  • AI和可視化的一些價(jià)值主張。
  • 通過可視化生態(tài)建設(shè), 如果讓每一家企業(yè)都擁有一套可視化搭建平臺(tái)。
責(zé)任編輯:姜華 來源: 趣談前端
相關(guān)推薦

2023-11-16 08:11:32

前端營(yíng)銷系統(tǒng)

2024-03-22 08:21:48

可視化搭建平臺(tái)組件商店H5-Dooring

2022-07-22 11:22:10

B 端菜鳥數(shù)字化

2021-09-15 10:03:30

騰訊QQ圓夢(mèng)表情

2022-04-05 13:56:48

設(shè)計(jì)模式javascript

2020-11-09 09:10:31

javascript設(shè)

2022-05-17 15:45:41

禮物驚喜送達(dá)線上送禮

2011-12-01 14:06:32

2021-04-16 08:54:03

CMS系統(tǒng)redisnode服務(wù)器

2023-10-20 08:04:34

系統(tǒng)重構(gòu)實(shí)踐

2021-04-21 07:37:19

JVM復(fù)盤 日志

2023-02-27 07:40:00

系統(tǒng)重構(gòu)前端

2020-09-28 06:45:42

故障復(fù)盤修復(fù)

2021-05-26 10:40:28

Vue3TypeScript前端

2018-12-04 15:08:11

QQ視覺設(shè)計(jì)APP

2022-03-18 08:46:08

vivo官網(wǎng)APP首頁(yè)改版

2011-07-26 15:30:32

jQuery

2020-02-26 09:00:30

程序員技能開發(fā)者

2019-04-22 09:00:38

2013-02-25 14:31:10

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)