消息回复图文时候报错 MsgType is not defined,源码如下
来源:4-4 第四天 上传临时素材之图片和视频
慕粉1146045851
2016-10-19
报错如下:
ReferenceError: ejs:6
4| <CreateTime><%=createTime%></CreateTime>
5| <MsgType><![CDATA[<%=msgType%>]]></MsgType>
>> 6| <%if(msgType === 'text'){%>
7| <Content><![CDATA[<%=content%>]]></Content>
8| <%
9| } else if(msgType === 'image') {
MsgType is not defined
weixin.js代码如下:
}else if(content==='4'){//图文
reply=[{
title:'技术改变未来!',
discription:'描述',
picUrl:'http://b.hiphotos.baidu.com/album/s%3D1600%3Bq%3D90/sign=4f04be8ab8014a90853e42bb99470263/b8389b504fc2d562d426d1d5e61190ef76c66cdf.jpg?v=tbs',
url:'https://www.baidu.com/'
},{
title:'知识改变命运!',
discription:'没有穷死只有懒死的!',
picUrl:'http://pic.58pic.com/58pic/13/40/15/74W58PICfa7_1024.jpg',
url:'https://mp.weixin.qq.com/cgi-bin/frame?t=advanced/dev_tools_frame&nav=10049&token=1162030020&lang=zh_CN'
}];
}
this.body=reply;
tpl.js模板代码如下:
/*
<xml>
<ToUserName><![CDATA[<%=toUserName %>]]></ToUserName>
<FromUserName><![CDATA[<%=fromUserName %>]]></FromUserName>
<CreateTime><%=createTime%></CreateTime>
<MsgType><![CDATA[<%=msgType%>]]></MsgType>
<%if(msgType === 'text'){%>
<Content><![CDATA[<%=content%>]]></Content>
<%
} else if(msgType === 'image') {
%>
<Image>
<MediaId><![CDATA[<%=content.media_id%>]]></MediaId>
</Image>
<%
} else if(msgType === 'voice') {
%>
<Voice>
<MediaId><![CDATA[<%=content.media_id %>]]></MediaId>
</Voice>
<%
} else if(msgType === 'video') {
%>
<Video>
<MediaId><![CDATA[<%=content.media_id%>]]></MediaId>
<Title><![CDATA[<%=content.title %>]]></Title>
<Description><![CDATA[<%=content.description%>]]></Description>
</Video>
<%
} else if(msgType == 'music') {
%>
<Music>
<Title><![CDATA[<%=content.title%>]]></Title>
<Description><![CDATA[<%=content.description%>]]></Description>
<MusicUrl><![CDATA[<%=content.musicUrl %>]]></MusicUrl>
<HQMusicUrl><![CDATA[<%=content.hqMusicUrl%>]]></HQMusicUrl>
<ThumbMediaId><![CDATA[<%=content.thumbMediaId%>]]></ThumbMediaId>
</Music>
<%
} else if(MsgType === 'news') {
%>
<ArticleCount><%= content.length %></ArticleCount>
<Articles>
<% content.forEach(function(item) {
%>
<item>
<Title><![CDATA[<%= item.title %>]]></Title>
<Description><![CDATA[<%= item.description %>]]></Description>
<PicUrl><![CDATA[<%= item.picUrl %>]]></PicUrl>
<Url><![CDATA[<%= item.url %>]]></Url>
</item>
<%
})%>
</Articles>
<%
}
%>
</xml>
*/
1回答
-
Scott
2016-10-19
比对下,看看是不是模板语法哪里没写对
'use strict' var ejs = require('ejs') var heredoc = require('heredoc') var tpl = heredoc(function() {/* <xml> <ToUserName><![CDATA[<%= toUserName %>]]></ToUserName> <FromUserName><![CDATA[<%= fromUserName %>]]></FromUserName> <CreateTime><%= createTime %></CreateTime> <MsgType><![CDATA[<%= msgType %>]]></MsgType> <% if (msgType === 'text') { %> <Content><![CDATA[<%- content %>]]></Content> <% } else if (msgType === 'image') { %> <Image> <MediaId><![CDATA[<%= content.mediaId %>]]></MediaId> </Image> <% } else if (msgType === 'voice') { %> <Voice> <MediaId><![CDATA[<%= content.mediaId %>]]></MediaId> </Voice> <% } else if (msgType === 'video') { %> <Video> <MediaId><![CDATA[<%= content.mediaId %>]]></MediaId> <Title><![CDATA[<%= content.title %>]]></Title> <Description><![CDATA[<%= content.description %>]]></Description> </Video> <% } else if (msgType === 'music') { %> <Music> <Title><![CDATA[<%= content.title %>]]></Title> <Description><![CDATA[<%= content.description %>]]></Description> <MusicUrl><![CDATA[<%= content.musicUrl %>]]></MusicUrl> <HQMusicUrl><![CDATA[<%= content.hqMusicUrl %>]]></HQMusicUrl> <ThumbMediaId><![CDATA[<%= content.thumbMediaId %>]]></ThumbMediaId> </Music> <% } else if (msgType === 'news') { %> <ArticleCount><%= content.length %></ArticleCount> <Articles> <% content.forEach(function(item) { %> <item> <Title><![CDATA[<%= item.title %>]]></Title> <Description><![CDATA[<%= item.description %>]]></Description> <PicUrl><![CDATA[<%= item.picUrl %>]]></PicUrl> <Url><![CDATA[<%= item.url %>]]></Url> </item> <% }) %> </Articles> <% } %> </xml> */}) var compiled = ejs.compile(tpl) exports = module.exports = { compiled: compiled }00
相似问题