微信小程序將html轉爲wxml開發案例

微信小程序開發雖說是比較偏向前端開發,但是它們的語法結構又不太一樣。例如,wxml跟html就有本質的不同,就拿a標籤來說吧,wxml是不支持a標籤的,還有就是wxml不兼容html,下面小編就針對這個問題來分析一下怎麼才能將html轉換成wxml。具體步驟如下:

1、到https://github.com/icindy/wxParse下載

2.1 在你需要使用的xxx.js文件中引入WxParse模塊

var WxParse = require('../../wxParse/wxParse.js');

2.2 在使用的Wxss中引入WxParse.css,可以在app.wxss,注意是全局的app.wxss

@import "/wxParse/wxParse.wxss";

3、數據綁定

var article = '<div>我是HTML代碼</div>';/** * WxParse.wxParse(bindName , type, data, target,imagePadding) * 1.bindName綁定的數據名(必填) * 2.type可以爲html或者md(必填) * 3.data爲傳入的具體數據(必填) * 4.target爲Page對象,一般爲this(必填) * 5.imagePadding爲當圖片自適應是左右的單一padding(默認爲0,可選) */var that = this; WxParse.wxParse('article', 'html', article, that,5);

4、模版引用

//這裏data中article爲bindName<template is="wxParse" data="{{wxParseData:article.nodes}}"/>

下面我按照以上步驟,分析一下我的個人博客做的微信小程序案例,這裏以下載板塊爲例

雷小天博客

我的下載板塊是index,點擊進入的詳情板塊是entry。正是因爲我點擊進入詳情的時候,我掉的數據是我html格式,詳情裏面會帶一些p,div,a這樣的標籤,這不是我們需要的效果,所有我需要轉換成小程序所對應的wxml格式。

一、我把下載好了的wxParse文件夾放到我的項目中,這裏只需要放wxParse目錄就行了,看圖片會發現是跟pages同級的目錄。

二、我在我需要展現的頁面引入:var WxParse = require('../../wxParse/wxParse.js');因爲我不需要樣式所有,全局的wxParse.wxss我就註釋了。

雷小天博客

三、這一步是最關鍵也是最重要的一步了,數據綁定。因爲我的數據全部是從數據庫取的真實數據,這裏就涉及到從列表點擊到詳情事件加載數據,感興趣的可以看下《微信小程序如何加載數據庫真實數據》。所有我的數據綁定其實就是content內容。

 var article = res.data.content;//article是取到的數據

 var that = this;

 WxParse.wxParse('article', 'html', article, that, 5);

四、在我需要的模板中引用剛剛綁定的數據,也就是entry.wxml中

 <template is="wxParse" data="{{wxParseData:article.nodes}}"/>

最終效果如下所示

雷小天博客

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章