小编Lar*_*tel的帖子

在AngularJS中初始化Google Map

我正在考虑从backbonejs迁移到angularjs.

在骨干网中,我能够初始化一个视图,此时我创建了一个谷歌地图实例.然后我可以平移/缩放/等并在视图之间切换而不会丢失地图的当前状态.

鉴于以下使用angularjs:

的layout.html

<body>
  <div class="container-fluid" ng-view></div>
Run Code Online (Sandbox Code Playgroud)

map.html

<div id="map_canvas" ng-controller="MapCtrl"></div>
Run Code Online (Sandbox Code Playgroud)

我能够创建一个指令来渲染地图就好了.问题是每次切换回地图视图时它都会重新加载地图.

<map></map>
Run Code Online (Sandbox Code Playgroud)

因此,根据我对Angular的了解,我想我会创建一个MapController并在那里初始化地图.没有成功.

最重要的是我需要异步初始化谷歌地图并将数据推送到本地或远程并且能够导航应用程序而无需每次从头开始重新映射地图.

有人可以提出正确的方法吗?

谢谢 :)

尝试Per Andy Joslin的建议:

在app.js中:

// Generated by CoffeeScript 1.3.3
(function() {
  "use strict";

  angular.module("ofm", ["ofm.filters", "GoogleMaps", "ofm.directives"]).config([
    "$routeProvider", "$locationProvider", function($routeProvider, $locationProvider) {
      $routeProvider.when("/", {
        templateUrl: "partials/home"
      }).when("/map", {
        templateUrl: "partials/map",
        controller: MapCtrl
      }).otherwise({
        redirectTo: "/"
      });
      return $locationProvider.html5Mode(true);
    }
  ]);

}).call(this);
Run Code Online (Sandbox Code Playgroud)

在services.js中:

angular.module('GoogleMaps', []).
  factory('wasMapInitialized', function() {
    console.log("inside service");
    var maps = 0;

    if (!maps) {
      maps += 1;
      return 0; …
Run Code Online (Sandbox Code Playgroud)

google-maps angularjs

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

windows 7上的virtualenv返回AssertionError

在Windows 7上遇到virtualenv问题.

我跑:

virtualenv _testenv
Run Code Online (Sandbox Code Playgroud)

它返回:

Traceback (most recent call last):
  File "C:\Python27\Scripts\virtualenv-script.py", line 9, in <module>
    load_entry_point('virtualenv==1.5.2', 'console_scripts', 'virtualenv')()
  File "C:\Python27\lib\site-packages\virtualenv.py", line 558, in main
    prompt=options.prompt)
  File "C:\Python27\lib\site-packages\virtualenv.py", line 647, in create_environment
    site_packages=site_packages, clear=clear))
  File "C:\Python27\lib\site-packages\virtualenv.py", line 771, in install_python
    copy_required_modules(home_dir)
  File "C:\Python27\lib\site-packages\virtualenv.py", line 725, in copy_required_modules
    dst_filename = change_prefix(filename, dst_prefix)
  File "C:\Python27\lib\site-packages\virtualenv.py", line 710, in change_prefix
    (filename, prefixes)
AssertionError: Filename c:\Python27\Lib\os.py does not start with any of these prefixes: ['C:\\Python27']
Run Code Online (Sandbox Code Playgroud)

我有以下环境变量:

PYTHONHOME=C:\Python27
PYTHONPATH=c:\Python27;c:\Python27\Lib
PYTHONSTARTUP=C:\Users\Larry\.pythonrc
PATH=%PYTHONHOME%\;%PYTHONHOME%\Scripts;etc
Run Code Online (Sandbox Code Playgroud)

安装ActiveState Python:

ActivePython …
Run Code Online (Sandbox Code Playgroud)

python virtualenv windows-7

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

将Angular.js与Node.js集成(Express + Tower.js)

我是节点新手.我非常喜欢AngularJS的方法.我喜欢我在towerjs中看到的东西.

有人把两者连在一起吗?我想到塔主要用于后端api /休息和客户端角度.

node.js angularjs towerjs total.js

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

在启动时运行autostart_console.bat或在ConEmu中运行新选项卡?

我在Windows 8 Pro上使用ConEmu(robust cmd).

如何/在何处设置conemu以在启动ConEmu或打开新选项卡时运行autostart_console.bat?

谢谢.

cmd windows-8 conemu

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

为什么并非所有Google Map Tiles都是在AngularJS应用程序的初始加载时呈现的?

使用AngularJS构建的Google Map应用程序.

目前部署的沙箱:http://of.xchg.com/

单击地图链接,您将注意到只有一个平铺,如果有任何渲染.

如果您然后调整浏览器窗口的大小,那么其余的地图图块将完全呈现.

这是git项目:https://github.com/LarryEitel/of4

为什么不渲染所有Google地图图块?

有没有办法测试完整的瓷砖渲染?

有没有办法强制重新渲染所有地图图块?

google-maps-api-3 angularjs

7
推荐指数
2
解决办法
6742
查看次数

如何在AngularJS中异步加载谷歌地图?

现在我已经找到了一种在Andy Joslin的帮助下在这个SO 初始化-ogle-map-in-angularjs中初始化Google Maps的方法,我正在寻找一种异步加载Google Map Object的方法.

我在phonecat项目中找到了一个如何执行此操作的示例.

请注意在此示例中如何加载JS文件:index-async.html

在我的Jade Scripts部分加载到我的程序中我试过:

script(src='js/lib/angular/angular.js')
script(src='js/lib/script/script.min.js')

script
  $script([
    'js/lib/angular/angular-resource.min.js',
    'js/lib/jquery/jquery-1.7.2.min.js',
    'http://maps.googleapis.com/maps/api/js?key=AIzaSyBTmi_pcXMZtLX5MWFRQgbVEYx-h-pDXO4&sensor=false',
    'js/app.js',
    'js/services.js',
    'js/controllers.js',
    'js/filters.js',
    'js/directives.js',
    'bootstrap/js/bootstrap.min.js'
    ], function() {
      // when all is done, execute bootstrap angular application
      angular.bootstrap(document, ['ofm']);
    });
Run Code Online (Sandbox Code Playgroud)

当我这样做并去加载地图页面时,我得到:

A call to document.write() from an asycrononously-loaded 
external script was ignored.
Run Code Online (Sandbox Code Playgroud)

这就是Google Maps现在作为服务加载的方式:

'use strict';

var app = angular.module('ofm.services', []);

app.factory('GoogleMaps', function() {

  var map_id  = '#map';
  var lat     = 46.87916;
  var lng …
Run Code Online (Sandbox Code Playgroud)

asynchronous lazy-loading google-maps-api-3 angularjs angularjs-directive

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

如何在 pouchdb 中查询已删除的文档?

我想列出当前已删除的文档,以便能够取消删除一个或多个。

如何在 couchdb 中查询已删除的文档?我实际上正在使用 pouchdb。

尽管此 POST很好地描述了如何查询和取消删除文档,但它需要现有文档的 id。

我正在寻找一种查询所有已删除文档的方法。POST 引用了对所有更改进行查询。该查询返回所有已删除的文档以及已编辑/更改的任何文档。

我只查找已删除的文档。想想在“垃圾箱”中查询文档。:)

couchdb pouchdb

5
推荐指数
1
解决办法
1869
查看次数