标签: shopify

FlashList 的渲染大小不可用

我正在从 迁移FlatListFlashList,我已将我的 expo sdk 从 升级到 ,45.0.0并且46.0.0在实施FlashListshopify/flashlist 文档中的 as 时,我收到以下警告

FlashList 的渲染大小不可用。高度或宽度太小 (<2px)。请确保列表的父视图具有有效的大小。FlashList 将与父级的大小相匹配。

它工作得很好FlatList,只是从 api 加载数据需要花费很多时间,,,这就是为什么我决定切换到FlashList. 有人知道如何解决这个问题吗?如有任何帮助,我们将不胜感激。这是我的代码

渲染项函数

    const renderItem = ({ item: product }) => {
    return (
      <Product
        category={product.bp_product_category}
        itemname={product.bp_product_name}
        price={product.bp_product_selling_price}
        mass={product.bp_product_mass}
        unitofmass={product.bp_product_unit_of_mass}
        productID={product._id}
      />
    );
    };


      const keyExtractor = useCallback((item) => item._id, []);
      const filteredproducts = products.filter((product, i) =>
      product.bp_product_name.toLowerCase().includes(search.toLowerCase())
       );
Run Code Online (Sandbox Code Playgroud)

FlashList 本身

    <View style={{flex:1, width:'100%', height:'100%'}} >
       <FlashList
          keyExtractor={keyExtractor}
          data={filteredproducts}
          renderItem={renderItem} …
Run Code Online (Sandbox Code Playgroud)

shopify react-native react-native-flatlist

20
推荐指数
2
解决办法
2万
查看次数

通过一次通话获取Metafields产品的shopify

我一直在尝试为100多种产品获取metafields,这意味着我必须为每种产品分别进行100次api调用.如果有一种方法可以在一个xml文件中获取所有产品的所有元数据,就像变体附加到产品的方式一样.因此,通过一次api通话,我可以获取所有100种产品,而不是为每种产品分别进行100次api调用.任何帮助表示赞赏.

php shopify

19
推荐指数
1
解决办法
3132
查看次数

如何在Shopify Liquid中检索特定产品?

我有一个产品句柄列表,我想根据这个句柄获取产品.似乎没有办法告诉Liquid去购买单一产品.我可以使用API​​执行此操作,但如果我使用API​​,那么我必须使用JavaScript,并且我必须复制已经在代码段中的HTML,并复制逻辑.

我正在尝试的减少版本:

{% assign handle = 'my-product-handle' %}
{% assign product = products.handle %}
{% include 'snippet-product-item' %}
Run Code Online (Sandbox Code Playgroud)

product handle liquid shopify

19
推荐指数
4
解决办法
2万
查看次数

Shopify App开发教程

我不确定这是否是正确的论坛,因为我没有具体的开发问题 - 但是这里是:)

我正在考虑创建一个Shopify应用程序,以便在我的Shopify商店的前端使用.我一直在浏览Shopify文档,API看起来很棒 - 使用应用程序(至少是私有应用程序)启动和运行看起来很轻松.

但是我在创建应用程序后如何使用该应用程序?假设我使用单个控制器(Home - > Index)创建一个新的ASP.NET MVC站点,该站点返回一个简单地说"Hello World"的视图.(将来控制器当然会调用API,而View会用数据做出惊人的东西等)

现在我想在Shopify商店的前端使用这个神奇的网站作为应用程序.我是怎么做到这一点的?:)

我可以找到很多关于如何调用API以及如何在Shopify管理员中设置私有应用程序的教程 - 但我如何在我的前端实际使用这个应用程序?我不是在寻找有关公共应用程序和OAuth等的解释(尽管这方面的教程也很棒) - 但对于初学者来说只是一个关于创建和使用私有应用程序的教程.

任何伟大的教程/ Udemy课程/ Pluralsight视频等在那里我错过了?

多谢你们.

shopify

18
推荐指数
1
解决办法
6417
查看次数

覆盖困难的视图模型

我试图使用JS替换输入字段中的一些文本,但视图模型每次都会覆盖我的命令.这是我开始的HTML:

<td class="new-variants-table__cell" define="{ editVariantPrice: new Shopify.EditVariantPrice(this) }" context="editVariantPrice" style="height: auto;">
    <input type="hidden" name="product[variants][][price]" id="product_variants__price" value="25.00" bind="price" data-dirty-trigger="true">
    <input class="mock-edit-on-hover tr js-no-dirty js-variant-price variant-table-input--numeric" bind-event-focus="onFocus(this)" bind-event-blur="onBlur(this)" bind-event-input="onInput(this)">
</td>
Run Code Online (Sandbox Code Playgroud)

我运行这个JS:

jQuery('#product_variants__price').siblings().removeAttr('bind-event-focus');
jQuery('#product_variants__price').siblings().removeAttr('bind-event-input');
jQuery('#product_variants__price').siblings().removeAttr('bind-event-blur');
jQuery('#product_variants__price').siblings().focus()
jQuery('#product_variants__price').siblings().val("34.00");
jQuery('#product_variants__price').val("34.00");
Run Code Online (Sandbox Code Playgroud)

我留下了以下HTML:

<td class="new-variants-table__cell" define="{ editVariantPrice: new Shopify.EditVariantPrice(this) }" context="editVariantPrice" style="height: auto;">
    <input type="hidden" name="product[variants][][price]" id="product_variants__price" value="34.00" bind="price" data-dirty-trigger="true">
    <input class="mock-edit-on-hover tr js-no-dirty js-variant-price variant-table-input--numeric">
</td>
Run Code Online (Sandbox Code Playgroud)

问题是,每次单击输入字段时,该值都将恢复为页面加载时的值.

我也尝试在父td中运行命令以及我的值更改,以模拟变体的编辑并防止默认但没有成功:

jQuery('#product_variants__price').siblings().bind('input', function (e) {
    e.preventDefault();
    return false;
});
jQuery('#product_variants__price').siblings().bind('focus', function (e) {
    e.preventDefault();
    return false;
});
jQuery('#product_variants__price').siblings().focus()
jQuery('#product_variants__price').siblings().val("£34.00"); …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery shopify

17
推荐指数
1
解决办法
375
查看次数

如何捕获Shopify Webhook发送的HTTP POST请求

我有点像菜鸟,并且不怕承认,我正在研究这个项目作为学习经验,以便通过php和服务器端脚本/处理来改善.

我正试图想出一种方法来使用Shopify,并在每次从我的Shopify购物车完成订单时同时更新关闭服务器数据库.例如,有人从我的在线商店购买了一些东西,我希望它能够更新我的家庭数据库库存,以显示它现在少了一件商品.

我得出的结论是,最好的方法是设置一个webhook通知,将HTTP POST请求发送到我的服务器,然后我让我的服务器捕获POST并将其解析为XML.然后,我将通过将更新我的数据库的php脚本读取XML.

我没有问题的PHP,但我似乎无法弄清楚是如何抓住我的服务器上的webhook.Webhook要求我提供一个发送POST请求的URL,我的问题是你; 什么是网址?

我做了一些研究,发现你可以通过html,php,Access-Control-Allow-Origin等多种方式捕获POST请求.但是,由于我还是新手,我不知道真的明白如何做到这些.我尝试过使用HTML隐藏的动作表单,但似乎无法捕获XML.

我想要做的就是让webhook发送它的POST请求,并将其作为.xml捕获.这样我就可以在每天结束时读取xml,并相应地更新数据库.

如果您能想出更好或更简单的方法,请务必向我提出建议.我希望这是安全的,所以像Access-Control-Allow-Origin这样的方法是不可能的.

tl; dr:我在服务器上需要做什么来捕获webhook通知?我应该在服务器上使用什么脚本来提供给webhook?如何编写回调脚本?

php ruby-on-rails webhooks shopify

15
推荐指数
1
解决办法
2万
查看次数

如何使用Shopify API获取产品页面的URL?

我查看了Shopify产品API,但结果似乎没有返回产品页面URL.在标题上进行一些转换后,URL看起来像是结果.是否有可靠的定义逻辑用于此方法或任何其他方法来获取产品页面URL?

shopify

14
推荐指数
1
解决办法
6149
查看次数

Meteor Shopify API:按照集合ID将元数据发布到集合

使用froatsnook:shopify

试图获取集合的元数据.我有收藏品ID.根据Shopify的API文档,我应该能够获得集合的元数据,但我没有看到它的参数.

码:

getShopifyCollectionMetafields: function(collection_id) {

  // GET /admin/products/#{id}/metafields.json
  var meta = ShopifyAPI.getProductMetafields({id: collection_id});

  console.log(meta)
}
Run Code Online (Sandbox Code Playgroud)

这返回一个空数组(这是有道理的,我正在尝试传递一个集合ID,它需要一个产品ID - 但不知道该怎么做).

javascript shopify meteor

14
推荐指数
1
解决办法
396
查看次数

Shopify订单webhooks

我查看了不同的订单webhooks,并想知道它们什么时候被触发.这是我到目前为止所发现的:

  1. orders/updated,无论何时以任何方式更改订单,包括创建订单时(甚至在授权和orders/create被解雇之前),关闭或取消订单
  2. orders/create 在用户授权付款时触发
  3. orders/paid 当商家接受付款时被解雇
  4. orders/fulfilled 当商家履行订单时被解雇
  5. orders/cancelled 订单取消时触发

因为orders/updated每当其他挂钩被触发时也会触发,似乎添加更新webhook就足以保持本地数据存储同步到商店数据.但是,我想确认我对这些webhooks的理解是正确的,即orders/updated只要订单以任何方式发生变化,它就会被触发.而其他webhooks只针对更具体的用例?

webhooks shopify

13
推荐指数
1
解决办法
3405
查看次数

从Shopify Store卸载应用程序后,从PHP应用程序中删除商店详细信息

我希望从Shopify商店卸载应用程序后删除PHP应用程序中的商店详细信息,这些应用程序在安装应用程序时存储在数据库中,

现在我得到了一些解决方案,如下所示:

$create_webhook = array('webhook'=>array( 
    'topic'=> 'app/uninstalled', 
    'address'=>'{{ mydomainname}}/uninstalled.php',
    'format'=> 'json'
));

$request_update = $shopify('POST /admin/webhooks.json ', array(), $create_webhook);
Run Code Online (Sandbox Code Playgroud)

但是我们可以在安装时或任何其他时间创建此webhook吗?

php arrays post shopify

13
推荐指数
1
解决办法
668
查看次数