我正在使用Middleman建立一个静态网站,该网站拥有所有客户近期项目的投资组合部分.投资组合部分将以3 X 3库的方式显示项目缩略图,点击后,将在灯箱内打开他们共同响应的html页面.
灯箱内页面的布局是相同的,所以不是标记每个单独的页面,我认为Middleman可以使用[链接]处理从yaml数据文件(projects.yml)提供的内容.
这是我在config.rb文件中得到的内容
###
# Page options, layouts, aliases and proxies
###
# A path which all have the same layout
with_layout :popup do
page "/projects/*"
end
# Proxy (fake) files
# page "/this-page-has-no-template.html", :proxy => "/template-file.html" do
# @which_fake_page = "Rendering a fake page with a variable"
# end
data.projects.details.each do |pd|
proxy "/projects/#{pd[:client_name]}.html", "/projects/template.html", locals: { project: pd }, ignore: true
end
Run Code Online (Sandbox Code Playgroud) 我已经在这几天了,而且无处可去.
我正在尝试将List对象序列化为JSON,因此可以将其传递给Google Analytics的电子商务服务,因此需要事先将其传递给javascript.
但是,json输出有错误.
首先,我有一个Item类.
Item {
Id,
Name,
Sku,
Price,
Quantity
}
Run Code Online (Sandbox Code Playgroud)
我的购物车类包含商品列表
public List<Item> Items;
Run Code Online (Sandbox Code Playgroud)
我正在使用以下序列化列表.
var jsonList = JavascriptSerializer.Serialize(cart.Items);
Run Code Online (Sandbox Code Playgroud)
然后使用Razor将jsonList传递给javascript,如此 -
<script type="text/javascript">
var items = @jsonList;
</script>
Run Code Online (Sandbox Code Playgroud)
在浏览器中生成的结果如下所示:
items = [{"Id":ITEM_ID,"Name":"ITEM_NAME","Sku":"ITEM_SKU","Quantity":ITEM_QTY,"Price":ITEM_PRICE},{"Id":ITEM2_ID,"Name":"ITEM2_NAME",etc...}]
Run Code Online (Sandbox Code Playgroud)
所以我想知道我是如何摆脱"并用所需的"代替它们.它是否与我的Item类或我的javascript有关?
我试过@Html.Raw(项目)而没有运气 - 返回一个空的json对象.