javascript - 语法错误 : import not found: default when defining a js class

标签 javascript wordpress woocommerce unpkg

我正在构建一个 WordPress 插件。我在名为 demo-one.js 的 JavaScript 文件中有以下内容:

import WooCommerceRestApi from "https://unpkg.com/@woocommerce/woocommerce-rest-api@1.0.1/index.js";

alert('Hello!');

class someClass {
    constructor() {
        alert("Hello again!");
    }
}

export default function(){
    var mySomeClass = new someClass();
}
...我发现在我的控制台中,我收到以下错误:

SyntaxError: import not found: default | demo-one.js:1:7

export上的所有信息我可以在网上找到在类之外使用的自由 float 值和函数的关键字,所以我为有点盲目而道歉。
我很确定我正确定义了默认导出,但似乎我没有。我在这里做错了什么?

最佳答案

使用 import您必须将该 JavaScript 注册为模块:

// Your regular enqueue here
wp_enqueue_script( 'myplugin.js.main', $url, [], $path );

// Add type="module" to your script tag.
// Before: <script src="myscript.js"></script>
// After:  <script src="myscript.js" type="module"></script>
add_filter( 'script_loader_tag', function( $tag, $handle, $src ) {
    // Replace "myplugin.js.main" with your asset's handler
    if ( $handle !== 'myplugin.js.main' ) {
        return $tag;
    }

    return sprintf( '<script src="%s" type="module"></script>', esc_url( $src ) );
}, 10, 3 );

关于javascript - 语法错误 : import not found: default when defining a js class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62694336/

相关文章:

javascript - AngularJS w/Flask 后端,表示从后端传递的数据

php - Woocommerce 更改 $product->get_categories 的顺序

WordPress导入功能

wordpress - 计算 Woocommerce 中每个订单状态的不同订单状态计数和总现金

javascript - 返回 firebase 数组返回元组而不是数组

javascript - 如何从 DOM 元素创建带有键和值的对象数组?

php - WooCommerce 法典 : how to set the user/customer on an order

php - Woocommerce:如何为首次订单添加额外费用

javascript - 如果 URL 未加载,如何在 &lt;iframe&gt; 上显示自定义内容

php - 如何使用准确的帖子标题进行查询