Angular4 can't find Jquery-UI functions

后端 未结 3 460
猫巷女王i
猫巷女王i 2020-12-17 03:13

I have installed Jquery and Jquery-ui

npm install --save jquery jquery-ui

The files are in the node_modules directory. I have a component t

3条回答
  •  野趣味
    野趣味 (楼主)
    2020-12-17 03:38

    HOLY SMOKES! This one was very troublesome, but I figured it out after days of trying.

    So, there are a lot of partial answers out there, but this should be complete. You cannot from what I have seen, include jquery-ui in your angular-cli and the index. The plugin inclusions will be overwritten and jquery as a global will be undefined. I couldn't get it to work by using just the angular-cli.json, but I did get it to work by only using index inclusion.

    Here is what needs to be done to only use index script inclusion for jquery/jquery-ui.

    1: Uninstall jquery and jquery-ui and remove it from the package.json

    npm uninstall --save jquery jquery-ui
    

    2: Delete the node_modules folder

    3: Delete any references to jquery or jquery-ui in you angular-cli.json file

    4: Rebuild the node_modules folders (double check that jquery-ui is not there, but it doesn't really matter so long as the angular-cli.json doesn't have it included.

    npm install
    

    5: include jquery, then jquery-ui in your index file. I used 2.2.4, because I don't trust 3 yet.

    
    
    

    6: In what ever component you want to utilize jquery or jquery plugin inject $

    declare var $: any;
    
    $('draggable').draggable(); // WORKS!
    

提交回复
热议问题