文本關鍵詞高亮-vue版本

来源:https://www.cnblogs.com/hello-dummy/archive/2023/08/11/17623559.html
-Advertisement-
Play Games

# Vue基礎學習 HTML+CSS+JS基礎文檔: Vue3官網文檔: | Vue2文檔: 個人建議:對於小白和新手,以及只會HTML+CSS+JS基礎的人來說,別上來就搞那一套高度封裝的開發方式,開發是很方便,調bug也是非常麻煩的。先以這種腳本引入+HTML的**混合開發**入手,熟悉之後再用 ...


、、

<template>
<div>
  <div>
    <input type="text" @keyup.enter="mark">
  </div>
  <div ref="text" style="height: 200px; overflow: auto" v-html="html">

  </div>
  </div>
</template>

<script setup lang="ts">
import * as cheerio from 'cheerio';
import { ref } from 'vue';

const text = ref()
const html = ref(
    '<p>個人思想編輯 <span>播報</span></p>' +
    '<p>超長期投資——“超長期投資是我的信念和信仰。總結來講,第一點是把基金做成超長期結構的基金,第二點是所投公司和投資基金的理念要完全一致。”</p>' +
    '<p>投具有偉大格局觀的企業家——“特別少的人,特別少的公司能夠有這個格局、執行力、能夠把公司願景推到那麼高的高度,我們就要尋找這樣的人。找到這個人有兩種模式:一種模式是人海模式,到處參加各種會議,一個地方一個地方跑。我們採用的是研究型模式,就是通過研究發現哪個是最好的商業模式,然後我們再尋找跟最好商業模式契合的最好創業者,我們再一起發展。”</p>' +
    '<p>善於甄別“虛假的護城河”——“我經常在公司內部強調我們要善於甄別“虛假的護城河”,譬如政府保護,這類的護城河隨時都有可能崩潰。而長期創造最大價值的,並用最高效的方式和最低的成本創造最大價值的才是企業“護城河”的本質。”</p>' +
    '<p>在關鍵的時點投資關鍵的變<span>化</span>——關鍵時點就是大家都看不懂的時候。關鍵變化就是:如果是一成不變的事情,實際上很容易被看見,這個世界永恆的只有變化。只有在變化的過程中我們才能去跟別人有不同的觀點,而且是產生非常長期的不同觀點。我關註的是創造多大價值的機會,這就是我說的深入基本研究,在這個過程中我們多年來一直堅持持續深入的跨時間、跨地區、跨行業、跨類別、跨線上/線下的行業研究,所以高瓴能夠深刻理解這些行業的長期內在發展規律和業務邏輯,從而準確把握行業與市場的變革要素和時點。”</p>' +
    '<p>投資哲學:“守正用奇”、“弱水三千,但取一瓢”、“桃李不言,下自成蹊”。——“我有三個哲學觀,也是在公司里反覆強調並實踐的。分別是:“守正用奇”、“弱水三千,但取一瓢”和“桃李不言,下自成蹊”。“守正用奇”語出老子《道德經》的“以正治國,以奇用兵”;“弱水三千,但取一瓢”引申自《論語》,是說看準了好的公司或業務模式就要下重註。而“桃李不言,下自成蹊”出自《史記》,是說只要做正確的事情,不用去到處宣傳,好的企業家會找到我們。”</p>' +
    '<p>長期主義——長期主義不僅僅是投資人應該遵循的內心法則,它可以成為重新看待這個世界的絕佳視角。因為,於個人而言,長期主義是一種清醒,幫助人們建立理性的認知框架,不受短期誘惑和繁雜噪音的影響。於企業和企業家而言,長期主義是一種格局,幫助企業拒絕禁錮的零和游戲,在不斷創新、不斷創造價值的歷程中,重塑企業的動態護城河。於社會而言,長期主義是一種熱忱,無數力量匯聚到支撐人類長期發展的基礎領域,關註教育、科學和人文,形成一個生生不息、持續發展的正向迴圈。無論是個人、企業還是社會,只要在長期的維度上,把事情看清楚想透徹,把價值創造出來,就能走在一條康莊大道上。 [20]</p>' +
    '<p>個人語錄編輯 <span><span>播</span><span>報</span></span></p>' +
    '<p>“我要做企業的超長期合伙人,這是我的信念。高瓴的使命就是發掘最具有長期競爭優勢的企業,用最長線的錢來幫助企業實現長期價值。我們相信那些能長期為消費者帶來價值、為產業鏈提高效率、‘護城河’足夠深的商業模式能夠帶來長期的高資本回報率。”</p>' +
    '<p>“我要找的是具有偉大格局觀的堅定實踐者。”</p>' +
    '<p>“要研究,只有研究才能讓你對變化有理解。研究是基於深刻的對事物本質的研究,方法見仁見智,有的人看一兩個季度,有的人看一兩年,有的人看盈利,我看東西是看看五年、十年、二十年的東西。我看的不是形式,我看的是一個人本質上給社會有沒有創造價值,只要你給社會創造很大的價值,早晚你會給所創的公司創造價值。”</p>' +
    '<p>“我把投資大致分為兩類,一種是零和游戲,一種是蛋糕做大游戲。很多人的投資是前者,比如pre-IPO這種,我個人是不相信零和游戲的。我喜歡把蛋糕做大的游戲,就是我的思想、資本不能創造價值,我是不會投資的。”</p>' +
    '<p>“我覺得“真正的護城河”是長期創造最大價值的,而且用最高效的方式和最低的成本創造最大價值。怎麼創造這種價值,在不同的環境和不同的時代是不一樣的。在美國,二十世紀五十年代,品牌是最大化、最快創造價值的“護城河”,而隨著互聯網對品牌的衝擊,品牌價值的護城河又不見得是最高效的方式,有人說在網上通過意見領袖創造價值效率更高。如我剛纔說的,這個世界永恆的只有變化,護城河也不可能不變,優秀的公司是當互聯網大潮襲來時,能夠深挖自己的“護城河”,主動擁抱互聯網帶來的變化。如果一家企業恆古不變,這種企業永遠不值得投資。”</p>' +
    '<p>“我們認為投公司就是投人,真正的好公司是有限的,真正有格局觀、有胸懷又有執行力的創業者也是有限的,不如找最好的公司長期持有,幫助企業家把最好的能力發揮出來。”</p>' +
    '<p>“我本質上是創業家,只是我的專業領域是投資而已。能生活在這個創新層出不窮的時代里,我覺得很幸運。我喜歡想乾大事的企業家,我最大的樂趣就是幫他們實現夢想。”</p>' +
    '<p>“創業中感觸最深的是對價值觀的堅持,不忘初心,方得始終”</p>' +
    '<p>“劉強東非常的真實,我希望創業者更多的是真實,我就是燒錢的,真實的表達自己,總有適合你的投資者,就得真實,但是你別見一個資本家,這個資本家喜歡精耕細作的,你就說我們家就是江澤水鄉來的,你老在變,雖然融資做得很快,但是最後會有問題,我覺得真實是第一重要的,但是由於太多的人在培訓創業家,有太多人培訓資本家,我覺得培養很好,培養技術很好,但是培養的時候要強調他們把自己真實的一面互相曝露出來。” [13]</p>' +
    '<p>"我們正在經歷真正的轉折點,不僅在數量上超越,而且從傻大笨粗的產品出口過度到知識產權的投資、甚至本土業務模式的海外出口。" [14]</p>' +
    '<p>張磊總結出企業創新最關鍵的兩點:首先要是一個學習型組織;其次要有好的企業文化。這樣的企業文化,既不是“你好我好大家好”的家文化(family culture)也不是時刻提心吊膽、視身邊所有人為競爭對手的狼文化(wolf pact culture)。好的企業文化應該是運動員文化(sportsmanship),有運動員的比賽精神,有運動隊的協作精神,失敗之後能站起來,總結經驗教訓,不斷提高自己。 [22]</p>'
)

const getLeafNode = (node): any[] => {
  // 獲取全部的葉子節點
  const child = node.children || [];

  const leafNodes = [...(child.length > 0 ? [] : [node])];

  for (let i = 0; i < child.length; i++) {
    const childLeadNodes = getLeafNode(node.children[i]);
    leafNodes.push(...childLeadNodes);
  }

  return leafNodes;
}

const mark = (e) => {
  cleaMark();

  const key = e.target.value;
  if (!key) {
    return;
  }
  const ch = cheerio.load(html.value);
  const body = ch('body');

  const child = getLeafNode(body[0]);
  console.log(child)

  const replaceReg = new RegExp(key, "ig");
  const replaceString = `<span style="color: #ed4014" high-light-text="high-light-text">${key}</span>`;
  child.forEach(ele => {
    ch(ele).replaceWith(ele.data.replace(replaceReg, replaceString));
  });
  html.value = body.html() || '';
}

const cleaMark = () => {
  const ch = cheerio.load(html.value);

  const body = ch('body');

  const child = getLeafNode(body[0]);

  child.forEach(ele => {
    // console.log(ele)
    if (ch(ele.parent).attr('high-light-text') === 'high-light-text') {
      ch(ele.parent).replaceWith(ele);
    }
  });

  html.value = body.html() || '';
}

</script>

<style scoped>

</style>

 

、、

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • ![](https://img2023.cnblogs.com/blog/3076680/202308/3076680-20230811232544082-164229613.png) # 1. 基本信息 SQL經典實例 SQL Cookbook [[美]安東尼·莫利納羅(Anthony Molin ...
  • ![file](https://img2023.cnblogs.com/other/3195851/202308/3195851-20230811181235894-1707158282.png) # 個人簡介 * 王海林 白鯨開源研發工程師 * GitHub ID:hailin0 * 做過性能監控 ...
  • GaussDB(DWS)支持多種相容模式,為了相容目標資料庫,各模式之間或多或少存在一些行為差異。這裡分享一個mysql相容模式下的表達式函數因不同寫法引發的結果差異案例。 ...
  • GaussDB(for Redis)提供了完備的大Key解決方案,支持大Key線上診斷、監控預警、承載力強等能力,彌補了開源Redis在大key問題上的不足,讓DBA如虎添翼。 ...
  • 在數字經濟時代下,數據驅動業務創新發展已經成為企業的主要選擇,基金行業機構也在積極推進數字化轉型,但機遇與挑戰並存。數據要轉化為[數據要素](https://www.dtstack.com/?src=szsm),需要系統體系化的數據能力建設作為催化劑。 基金行業也表現出一定的痛點,其中表現為數據安全 ...
  • 先看效果,整體界面結構如下 ![image](https://jsd.cdn.zzko.cn/gh/YuanjunXu/Images@main/src/image.4few4wtl3uyo.jpg) 點擊左側菜單欄,右側切換顯示不同頁面內容。 [Vue3使用路由–南河小站](https://www. ...
  • 這裡給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 1、效果圖 用手機錄屏再用小程式轉換的gif,可能精度上有點欠缺。 2、實現過程 1、觀察及思考 開始編碼前我們首先觀察展開後的結構:兩個四分之一的圓加三個圓形菜單項。 文章名為用css畫扇形,如上圖所示沒有任何Javascript輔助卻 ...
  • ## 關於 uniapp 許可權申請和跳轉系統頁面 * 查詢許可權 * 跳轉到應用詳情 * 跳轉到系統設置 * 參考 ### `此文中所有 IOS 中使用的代碼,因為沒有設備所以均未經過實機測試` ### 查詢許可權 > uni.authorize 獲取許可權只支持微信小程式不支持app,只能用 Nativ ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...