1

我已将 jquery 和 jStorage 安装为npm i --save jstoragehttps://www.npmjs.com/package/jstorage)和npm i --save jQuery. 我正在尝试使用 jStorage 并设置值,但出现错误:-

TypeError: Cannot read property 'set' of undefined

应用程序.js

import $ from 'jquery'; 

const App = props => {
  const swithHandle = (function () {
    console.log('hi'); // correct output
    //  localStorage.setItem('rememberMe', '323232dd');  // correct output
    $.jStorage.set("mykey", "keyvalue");   //TypeError: Cannot read property 'set' of undefined
  }());
  return (
    <BrowserRouter>
      <div className="App" onClick={swithHandle()}>
        <Navbar />
      </div>
    </BrowserRouter>
  );
}
4

1 回答 1

2

jStorage库似乎将自己全局保存在页面中,并且通过其典型名称似乎与实际的 jQuery 库没有任何联系$

因此,以下代码示例说明了如何在您的应用程序中使用它们:

import $ from 'jquery';
import 'jstorage';

// this is how you use jQuery
$('#some_element').val();

// this is how you use jStorage
window.$.jStorage.set('a', 'b');

请记住,这不是window.$jQuery 。

并且为了进一步避免混淆,如果您打算使用 jQuery 本身,我建议您将其 import 命名为不同于$,例如:

import jQuery from 'jquery';

jQuery('#some_element').val();
于 2020-07-24T09:07:16.223 回答